如何实现子进程超时?

时间:2017-06-01 23:28:28

标签: python subprocess

我想对子进程调用产生的子进行超时。

所以作为测试:

#!/home/depot/.conda/envs/python3/bin/python
import subprocess                                                     
if __name__ == "__main__":
    subprocess.call('./sleep.py', timeout=1)

正在运行的sleep.py文件:

#!/home/depot/.conda/envs/python36/bin/python
from time import sleep

if __name__ =="__main__":
     for j in range(3):
         print(j)
         sleep(1)

现在显然这没有实现任何超时。

我有点惊讶,因为该文件似乎暗示超时确实是一个选项:
Using the subprocess Module

然而,关于SO的其他答案似乎忽略了该功能并倡导创建定制的计时器:
Subprocess timeout does not work
Using module 'subprocess' with timeout

如何使用内置timeout参数实现超时?

0 个答案:

没有答案