【发布时间】:2015-04-06 08:36:49
【问题描述】:
我正在尝试从 PHP5 启动一个 linux shell 脚本,该脚本将运行 24 小时,但我希望网页在几秒钟内返回。我虽然可以通过生成任务的脚本来解决这个问题,但它似乎不起作用。
几天来,我一直在寻找解决方案或“一枪/开火然后忘记”选项,但没有任何运气。
下面的例子说明了这个问题。
在 PHP 5 中,我进行了以下调用之一(在这一点上尝试了很多)
passthru("dummy_script.sh");
或
system("dummy_script.sh");
或
shell_exec("dummy_script.sh");
虚拟脚本如下所示:
#!/bin/sh
{
while true
do
sleep 1
done
} &
我可以看到该进程已启动,但在我制作“killall dummy_script.sh”之前网页没有返回。如果我在终端中手动运行脚本,它会立即返回并产生循环。
有没有人知道在这里我可以在不让网页等待的情况下生成任务的方法?
希望大家能帮帮我,不胜感激。
【问题讨论】:
标签: php linux multithreading shell sh