【发布时间】:2015-11-08 11:39:03
【问题描述】:
我正在尝试编写一个 cronjob 来启动多个我想并行运行的进程。
我正在使用 foreach 调用每个命令,但命令行等待输出。我不想放。
想知道是否有人为此使用过任何库?
【问题讨论】:
我正在尝试编写一个 cronjob 来启动多个我想并行运行的进程。
我正在使用 foreach 调用每个命令,但命令行等待输出。我不想放。
想知道是否有人为此使用过任何库?
【问题讨论】:
在命令后添加 & 符号:
$ php task.php &
它将在后台运行该 php 实例并继续。
【讨论】:
如果您阅读the manual on passthru,您会注意到它告诉您如何避免这种情况...
如果使用此函数启动程序,为了使其继续在后台运行,必须将程序的输出重定向到文件或另一个输出流。否则会导致 PHP 挂起,直到程序执行结束。
因此,您可以依靠 UNIX fds 将输出重定向到 /dev/null 之类的东西,例如,如果您不关心输出,或者如果您确实想保存输出,则可以重定向到某个文件,这样可以避免 PHP 在命令完成。
pssthru("somecommand > /some/path/to/file")
【讨论】: