多线程方法同时PHP


Multi thread methods simultaneously php

我正在开发一个PHP脚本,该脚本使用不同的参数实例化同一类的三个对象。这些对象依次无限期地运行方法(如 Cron 作业),因此,下一行或第二行永远不会开始。

所以如果我有

$a = new CronJob('Listing', '2010-04-01T00:00:01', '2010-04-01T00:30:01', 'A', 'BUSO');
$s = new CronJob('Listing', '2010-04-01T00:00:01', '2010-04-01T00:30:01', 'S', 'BUSO');
$p = new CronJob('Listing', '2010-04-01T00:00:01', '2010-04-01T00:30:01', 'P', 'BUSO');

$s永远不会执行,因为$a无限期运行

我该如何解决这个问题?我想在不同的脚本中运行它们,但我不想3 * (#object types)同时运行它们。

老实说,你最好的选择是制作单独的 cron 作业条目。PHP 本身并不支持多线程,而且许多让它工作的黑客都是昂贵的。

看看这个堆栈溢出问题:如何在PHP应用程序中使用多线程

更新:

也想把这个想法扔给Gearman。如果可以添加外部扩展,请下载 PECL 包并安装它。您将需要本地系统上的齿轮箱。

你考虑过PHP线程吗?

这是另一个关于 PHP 线程问题的 SO 讨论。