你知道任何简化进程、信号发送等工作的库吗?提前谢谢你!
编辑:我们正在 PHP 守护程序中从外部源加载一些数据。我们希望将PHP进程拆分为:
- 每个数据源加载一个进程,
- 一个用于处理来自每个数据源的数据的过程。
你可能想看看Spork,它旨在简化php中的分叉和后台处理。
这是相当新的(仅在 3 天前宣布),但值得一试。
您可以使用进程控制库,但它仅适用于 linux。
出于fork
目的,它包含pcntl_fork
功能。例:
$pid = pcntl_fork();
if ($pid == -1) {
die('could not fork');
} else if ($pid) {
// we are the parent
pcntl_wait($status); //Protect against Zombie children
} else {
// we are the child
}
UPD:如果我正确理解您的目标,您就可以在不分叉流程的情况下设计您的应用程序。您可以使用两个守护程序,其中第一个守护程序将处理数据源并将其添加到队列中。第二个守护程序将跟踪队列并对其进行处理。
附言据我所知,php不能在Windows平台上分叉进程。另外,您可以在php中使用POSIX函数。