2012-08-03 17 views
9
t1=threading.Thread(target=self.read()) 
    print "something" 
    t2=threading.Thread(target=self.runChecks(), args=(self)) 

self.readが無期限に実行されるため、プログラムは印刷行に到達しません。 t1.start()を呼び出さなければ、これはどうやって可能ですか? (私がそれを呼び出したとしても、それは実行を開始し、次の行に進むべきでしょうか?)Pythonスレッドは、Thread.startを呼び出す前に実行を開始します。

答えて

11

の結果をThreadのターゲット引数に渡しています。スレッドが呼び出す関数を渡されることを期待し、これだけ括弧を削除し、スレッドを開始することを忘れないでください:

t1=threading.Thread(target=self.read) 
t1.start() 
print "something" 
関連する問題