繁体   English   中英

从PHP命令行脚本生成多个进程

[英]Spawning multiple processes from PHP command-line script

我有用PHP编写的自定义构建系统。 它与make工具类似,收集具有依赖项的源文件以编译和链接它们。

它使用系统函数来运行G ++,如下所示:

    system("g++ -c $file -o $out");

它工作得很好。 但是我有一个多核处理器,我想使用这些额外的核心来加速这个过程(比如make -j 8 )。 我怎么能在PHP中做到这一点? 我本身不需要在PHP中使用多线程,我只需要生成一些子进程并等待它们完成。

由于这通常内置于PHP CLI版本,因此您可以使用pcntl_fork() 它将当前的PHP进程复制到子进程中,然后可以与父进程分开工作。

请参见手册页上的示例。

(您也可以使用封装该功能的PEAR System_Daemon ;虽然它对您的情况有点太多了。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM