subprocess.call() 挂起。 "os.waitpid(self.pid, wait_flags)"
subprocess.call() Hangs. "os.waitpid(self.pid, wait_flags)"
我有一个奇怪的问题,我以前 运行 没有遇到过。我有一个脚本可以在给定时间段内提供 PDF 报告。到现在为止一切正常,但我已经进行了一些更新并将这些更改拉到服务器上。现在我的进程挂在 subprocess.call() 并且我不确定为什么。
我听说这在使用 PIPE 时可能是个问题,但我不是。我什至不确定如何调试这个问题。有什么想法吗?
subprocess.call(
['{}/orca.sh'.format(orca_dir),
'graph',
json.dumps(chart, cls=plotly.utils.PlotlyJSONEncoder),
'--width',
'1200',
'--scale',
'4',
'-o',
'/temp/{}'.format("a" + (count * "a"))]
)
File "/root/**", line 97, in **
'/temp/{}'.format("a" + (count * "a"))])
File "/root/anaconda3/envs/**/lib/python3.7/subprocess.py", line 325, in call
return p.wait(timeout=timeout)
File "/root/anaconda3/envs/**/lib/python3.7/subprocess.py", line 990, in wait
return self._wait(timeout=timeout)
File "/root/anaconda3/envs/**/lib/python3.7/subprocess.py", line 1624, in _wait
(pid, sts) = self._try_wait(0)
File "/root/anaconda3/envs/**/lib/python3.7/subprocess.py", line 1582, in _try_wait
(pid, sts) = os.waitpid(self.pid, wait_flags)
orca.sh 执行 Orca 的 AppImage 容器以使用给定参数执行其独立软件。还值得注意的是,我 运行 这个脚本在两台服务器上运行,但第二台是预更新的,仍然运行良好。 None 我所做的更改是针对如何进行此调用或它应该如何工作的。会不会是 AppImage 容器内的东西导致我挂起?
确定了问题。
我编译 Plotly 对象列表以生成这些图表的脚本未能正确生成第一个 Plotly 对象。所以第一个对象是 NoneType,但是 subprocess.call() 是用列表的每个成员调用的。不幸的是,由于 AppImage 没有收到图表数据,它似乎只是无限期挂起。
我有一个奇怪的问题,我以前 运行 没有遇到过。我有一个脚本可以在给定时间段内提供 PDF 报告。到现在为止一切正常,但我已经进行了一些更新并将这些更改拉到服务器上。现在我的进程挂在 subprocess.call() 并且我不确定为什么。
我听说这在使用 PIPE 时可能是个问题,但我不是。我什至不确定如何调试这个问题。有什么想法吗?
subprocess.call(
['{}/orca.sh'.format(orca_dir),
'graph',
json.dumps(chart, cls=plotly.utils.PlotlyJSONEncoder),
'--width',
'1200',
'--scale',
'4',
'-o',
'/temp/{}'.format("a" + (count * "a"))]
)
File "/root/**", line 97, in **
'/temp/{}'.format("a" + (count * "a"))])
File "/root/anaconda3/envs/**/lib/python3.7/subprocess.py", line 325, in call
return p.wait(timeout=timeout)
File "/root/anaconda3/envs/**/lib/python3.7/subprocess.py", line 990, in wait
return self._wait(timeout=timeout)
File "/root/anaconda3/envs/**/lib/python3.7/subprocess.py", line 1624, in _wait
(pid, sts) = self._try_wait(0)
File "/root/anaconda3/envs/**/lib/python3.7/subprocess.py", line 1582, in _try_wait
(pid, sts) = os.waitpid(self.pid, wait_flags)
orca.sh 执行 Orca 的 AppImage 容器以使用给定参数执行其独立软件。还值得注意的是,我 运行 这个脚本在两台服务器上运行,但第二台是预更新的,仍然运行良好。 None 我所做的更改是针对如何进行此调用或它应该如何工作的。会不会是 AppImage 容器内的东西导致我挂起?
确定了问题。
我编译 Plotly 对象列表以生成这些图表的脚本未能正确生成第一个 Plotly 对象。所以第一个对象是 NoneType,但是 subprocess.call() 是用列表的每个成员调用的。不幸的是,由于 AppImage 没有收到图表数据,它似乎只是无限期挂起。