PHP 线程和脚本执行


php threads and script execution

我想在 php 中完成以下行为:

1 - 使用参数调用脚本

2-我为长时间运行的操作启动线程

3 - 脚本应将控制权返回给调用方

4-线程执行直到完成

这种行为可能吗?我现在看到的是,在线程完成执行之前,脚本不会返回,这是有道理的,因为如果脚本停止执行,线程的执行可能会死亡,但是有没有办法停止阻止客户端以便他们可以继续他们的业务?我是否坚持使用一些 exec() 调用来获取此行为?有没有办法仅通过线程来完成此操作?如果可能的话,我会避免使用exec。

因此,如果有人从浏览器调用我的脚本,它应该立即返回,并且长时间运行的进程应该继续执行,直到完成。

谢谢

丹尼尔

是的,这是可能的。通过 AJAX 调用您的 php 脚本,并动态创建 ajax 函数的多个实例。见附图。当我比较运行单个函数与 24 个实例的结果时,我的数据处理速度提高了大约 15 倍。我正在尝试用大约 3000 万条记录填充一个 MySQL 表,每条记录都涉及根据纬度/液化天然气计算到市中心的距离(以英里为单位)。所以是的,它不能在公园里散步。如您所见,我平均 看到这个:

多线程 http://gaysugardaddyfinder.com/screen2.PNG多线程 http://gaysugardaddyfinder.com/screen.png

这可能是一个光荣的黑客,或者不是 - 但它确实对我来说很好用。

我的服务器是具有 64 GB RAM 的至强 72 核心设置。