スレッドを呼び出すPython 2.7で記述されたスクリプトがあります。しかし、私が何をしても、スレッドは関数を呼び出さないでしょう。スレッドは関数(Python)を呼び出さない
それが呼び出す関数:
def siren_loop():
while running:
print 'dit is een print'
私はそれを呼び出すことを試みた方法:
running = True
t = threading.Thread(target=siren_loop)
t.start()
か:
running = True
thread.start_new_thread(siren_loop,())
私も見にsiren_loopする引数を追加してみましたそれはうまくいくが、変化はない。私はsiren_loop関数の行を表示することができません。
私はまた、明らかにうまくいかなかった多くの奇妙なものを試しました。私は間違って何をしていますか?
編集:人々はそれが働いていたので、別の機能からスレッドを呼び出そうとしました。だから、このようなものに見えた:
def start_sirene():
running = True
t = threading.Thread(target=siren_loop)
t.start()
をし、その部分が呼び出された:
if zwaailichtbool == False:
start_sirene()
print 'zwaailicht aan'
zwaailichtbool = True
sleep(0.5)
はたぶんそれが問題を引き起こす可能性が? 最後のprintステートメントが機能し、スレッドステートメントの前後に印刷を追加したときにも機能しました。
私はちょうどあなたがそれを呼び出そうとしたときの方法でコードを試してみました。あなたのステートメントを 'siren_loop'に連続して表示しました。だから私は問題が何であるか分かりません。 – tmwilson26
また、QPythonを使用して検証済みです。あなたのコードは問題ありません。 – Carcigenicate
残りのコードを少し入れて質問を編集しました。 – Noralie