class MyClass():
def __init__(self):
...
def start(self):
colorThread = threading.Thread(target = self.colorIndicator())
colorThread.start()
while True:
print ('something')
...
...
私はcolorIndicator()
の中にprint
ステートメントもあります。その声明は印刷されています。しかし、start()
メソッドのwhileループ内のprintステートメントは画面に表示されません。スレッドはプロセスをブロックしているようです
colorIndicator()
にも無限ループがあります。それはインターネットからいくつかのデータを取得し、カウンタを更新します。このカウンタは__init__
の中でself
という変数で初期化されています。この変数は他のメソッドで使用しています。
中になぜprint
が実行されていないのか分かりません。
colorIndicator機能:
def colorIndicator(self):
print ('something else')
...
while (True):
...
print ('here')
time.sleep(25)
私が手出力は次のようになります。
something else
here
here
私はその後、それを止めました。したがって、colorIndicatorは完全に完全に実行されています。 私はimport
でPythonインタプリタ(端末内)でスクリプトを呼び出しています。次にMyClass
をインスタンス化し、start
関数を呼び出します。
'colorIndicator'関数を投稿できますか? – Skam
@Skam今投稿しました。 – aste123
申し訳ありません、あなたの 'main'関数、またはあなたが提供する出力を与えるこのクラスとそのメソッドを呼び出しています – Skam