Всем привет :)
есть такой отрывок питоновского говнокода:
p = subprocess.Popen(cmd.split(' '),
stdout = subprocess.PIPE,
stdin = subprocess.PIPE,
stderr = subprocess.PIPE)
while True:
(r, w, e) = select.select([ p.stdout ], [], [], 1)
print('dbg >>>', r)
print(p.stdout.readline())
print('state: ', state)
print('r:', r)
print('dbg <<<')
if not r and state == 0:
continue
if not r and state == 1:
p.kill()
last_record = line['date']
return total, first_record, last_record
line = json.loads(p.stdout.readline())
if line:
state = 1
в переменной cmd такое:
cmd = 'ssh root@{0} tailf -n100 {1}'.format('localhost',
'{0}/conf/rtls.log'.format(ROOTDIR))
Хочется, такое: если в течение 3-х секунд нет никакого выхлопа, делать return