我使用 Ajax 启动可能需要几个小时才能运行的 PHP 脚本。它是异步完成的,因此即使浏览器关闭,PHP 脚本也会完成。
我需要处理任何由于某种原因而停止/挂起的 PHP 脚本。解决此问题的最佳方法是什么?有没有办法获取可用于定期检查活动的 PHP 脚本的进程 ID?在开始新的脚本之前,我需要杀死所有未完成的脚本。
谢谢,布赖恩
一个解决方案可能基于这个想法:
getmypid
用于获取其 PID(进程 ID)当另一个进程启动时,它可以检查该文件是否存在:
关于检测进程是否正在运行并最终杀死它,我不确定 PHP 是否提供这种功能......可能需要使用exec
来调用命令行实用程序,如ps
和kill
......