嗯,我有两个脚本。如下打印出b.py脚本输出的a.py:Popen stdout读取管道,使用睡眠死锁
#a.py
from subprocess import Popen, PIPE, STDOUT
p = Popen(['/Users/damian/Desktop/b.py'], shell=False, stdout=PIPE, stderr=STDOUT)
while p.poll() is None:
print p.stdout.readline()
#b.py
#!/usr/bin/env python
import time
while 1:
print 'some output'
#time.sleep(1)
这works.But, 为什么我的脚本僵局,当我取消对time.sleep()行?
如果分开执行,你确定b.py不会自己死锁吗? (检查缩进,如果它们对于两条线都是相同的,则为1:! –