2017-12-31 325 views
0

現在、私は2つのループをPythonでスレッドしようとしています。 1つは現在私が設定したGUIを表示するtkinterループで、もう1つはp2pチャット機能です。 'import threading'を使用してスレッドを定義し、それらを個別に開始することは機能していないようです。これらの2つのループを同時に実行するためにどのような方法を使用することができますか?Pythonのスレッディングでのスレッディング

私はスレッドを開始するために使用しているコードは:

thread1 = threading.Thread(target=x.mainloop()) 
thread1.start() 
thread2 = threading.Thread(target=root.mainloop()) 
thread2.start() 

答えて

1

あなたはそれらを呼び出すせずに関数を渡す必要があります。つまり、あなたはそれらを呼び出そうとしており、返し値をスレッドのためにtargetとして渡します。彼らは決して戻ってこないので、あなたは決して2番目のスレッドを起動しません。 。試してみてください:ええ、問題の一部であったが、私はまた、Tkinterのは、「主にシングルスレッドのイベントモデルに基づいて学んだことは、メインループ

thread1 = threading.Thread(target=x.mainloop) # Removed call parens on target 
thread1.start() 
thread2 = threading.Thread(target=root.mainloop) # Removed call parens on target 
thread2.start() 
+0

()、コールバック、イベントハンドラとTkinterの例外を上げるには、すべてのシングルで処理されます糸。" –

関連する問題