Pythonでクラスのメソッドの中で2つの関数を同時に実行したいと思います。 threading
モジュールを使用しようとしましたが動作しません。私の例のコードは以下の通りです:クラスのメソッド内で2つの関数をスレッド化する
import os, sys
import threading
from threading import Thread
class Example():
def __init__(self):
self.method_1()
def method_1(self):
def run(self):
threading.Thread(target = function_a(self)).start()
threading.Thread(target = function_b(self)).start()
def function_a(self):
for i in range(10):
print (1)
def function_b(self):
for i in range(10):
print (2)
run(self)
Example()
上記のコードが実行されたら、それだけですべての2
のすべて1
初とを出力します。しかし、私が欲しいのは、1
と2
を同時に印刷することです。従って、所望の出力はそれらが混ざっているべきである。
threading
モジュールはこれを実行できますか?そうでない場合、どのモジュールがそれを行うことができますか?誰かがそれを解決する方法を知っているなら、私に知らせてください。感謝!!
を、私は、これは質問に答えるとは思いませんコンポーネントを作成したり、新しいクラスを作成したりする代わりに、インスタンスを作成することができます。 – Hannu
あなたはポイントがあるように見えますが、私はそれを正しく修正しようとします。 –