gpt4 book ai didi

java - 如何从 proc_open 保存进程资源以便稍后检查状态?

转载 作者:太空宇宙 更新时间:2023-11-04 09:00:05 24 4
gpt4 key购买 nike

我正在运行一个sh 脚本,它通过ubuntu服务器上的php运行java进程。我正在使用 proc_open 来运行该进程。通常工作流程如下:

  • 请求页面 ->
  • 脚本运行(直到完成)->
  • 结果页面。

在我的例子中,脚本是并行运行的,因此服务器不会等到脚本完成(有时需要几个小时,所以不能),所以我需要以某种方式保存该资源以便稍后跟踪它(进程的状态或只是停止它)。

资源类型是“进程”,我用的是这个函数get_resource_type为了得到它。

序列化在这种情况下不起作用 - 资源对此来说是一个异常(exception)(您可以在“参数”框中查看 http://il2.php.net/manual/en/function.serialize.php)。

我的目标是良好的流程处理。有人知道我如何使用资源或其他方式进行流程处理吗?

最佳答案

您无法存储资源类型以供以后在 PHP 中使用。您需要做的是实现某种形式的异步通信 - 也许是一个文件,其中一个写入状态信息,另一个读取,共享内存,命名管道,...

我会调查pcntl extension 。提示:出于安全原因,在 Web 服务器环境中不可能进行 fork 。

关于java - 如何从 proc_open 保存进程资源以便稍后检查状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/949437/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com