首先,运行环境是Linux
有两个脚本a.py和b.py
在a.py中使用如下语句调用b.py
p = subprocess.Popen(['/usr/bin/python', 'b.py'], stdout=subprocess.PIPE)
如果开启了子进程后a.py中没使用p.wait()来等待子进程结束,而是使用命令行:
ps -ef | grep python | grep b.py | grep -v grep | wc -l
来检查进程是否结束
请问,在这种情况下出现了当b.py运行时间过长(半小时以上)时,它不会正常结束掉,导致a.py一直挂起无法结束,是什么原因呢?