2009-07-19 5 views
0

スレッドとSSHを使って正確な瞬間に複数のリモートジョブを起動する必要があります。だから私は書いています:スレッド、サブプロセス、ゾンビ

def dojob(hostname): 

    command = "echo Done" 
    p = Popen(['ssh','%[email protected]%s' % (user, hostname), command], stdout=PIPE, shell=False) 
    output = p.communicate()[0].strip() 
    print output 

[...] 

fire_starter = [Timer(t, dojob, [y]) for t,y in zip(instant, hosts)] 

for e in fire_starter: 
    e.start() 

コードは動作しますが、私のOSはゾンビで氾濫します。正直なところ、私は、()メソッドが子プロセスを処理し、終了するのを待っていると信じていました。どこが間違っていますか?

答えて

1

パイプ/ sshとpopen()に関するthis issueのように見えます。分析と解決はhereです。

関連する問題