我正在通过子进程执行 curl 命令。此 curl 命令在另一台服务器上启动视频处理,并等待响应。该过程完成后,远程服务器返回 json 对象。我正在使用 poll() 值检查子进程的状态,即 None - 进程未完成,0- 进程成功完成,1- 错误。
如果远程服务器上的处理时间约为 30 分钟/或更短,我会得到正确的响应,但如果处理时间更长,我只会得到 None 值,即使我可以看到远程服务器已经完成处理并且已经返回 json 对象。
谁能告诉我, poll() 在特定时间后只返回 None 的可能原因是什么。先感谢您。
我的 Popen 对象是:
object = subprocess.Popen(str(curlCmd), shell=True,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
我object.poll()
每 2 秒调用一次以检查该过程是否成功完成。