Запуск фоновой нити PHP на сайте


А вот такое необычное решение для длительных процессов нашлось в инете.
Но это только подобие запуска в фон, поскольку на самом деле в памяти тянется только одна нить.

<?php
set_time_limit(50);

function doSomething($counter)
{
    // here we do somthing on server side
    $f = fopen('test.txt','a');
    fwrite($f,$counter." ".date("H:i:s")."n");
    fclose($f);
}

ignore_user_abort(false);

if (ob_get_level() == 0) ob_start();

// redirect lient to some site or abort connecion
header("Location: http://www.ya.ru/");
ob_flush();
flush();

$counter = 1;
while (true)
{
    ob_flush();
    flush();
    sleep(4);

    doSomething($counter);

    $counter++;
    if ($counter > 10) break;
}

ob_end_flush();
?>