- RU.PHP ------------------------------------------------------------- RU.PHP -
Msg : #12093 [566]
От : Dmitry Pljonkin 2:5020/400 09 января 05, 15:26
Кому : Pavel Plesov 10 января 05, 21:20
Тема : Re: exec() бэкграундом
-------------------------------------------------------------------------------
From: Dmitry Pljonkin
Hi!
> > Возникла необходимость скрипт запускать фоном, и что-то никак с этим
> > не разберусь.
> > Сделал так:
>
> > exec("/usr/local/bin/php /mydir/myscript.php >/dev/null 2>/dev/null
> > &");
>
> > Вывод действительно давится, но основной скрипт все равно продолжает
> > ждать завершения этого "дочернего" /mydir/myscript.php
>
> Дело в том, что php ждет закрытия потока stdout этого процесса.
>
> Под *nix могут спасти proc_*().
>
Сделал так:
master.php:
/dev/null & ");
echo 'starting child process... ';
proc_close( proc_open($real_cmd, array(), $empty) );
echo 'process closed... ';
?>
slave.php:
Все равно ждет, зараза. Что я не так делаю?
> Более универсально - запуск через wrapper, который после запуска будет
> закрывать stdout и далее запускать требуемую программу.
К сожалению, это мне не доступно.
--
Adios!
--- ifmail v.2.15dev5.3
* Origin: Demos online service (2:5020/400)
При переходе по баннеру - скидка 25% на первый месяц обслуживания! При переходе по баннеру - скидка 25% на первый месяц обслуживания!