我必須在後臺啓動一個線程,但輸出似乎跟隨線程,而不是在main內堅持。我有這樣的事情:python線程,多線程與threading.thread
import threading
def work()
while True:
do stuff
def recieve()
while True:
await instruction
#main
recieve()
if instruction == "do work"
threading.Thread(target=work()).start()
我有拿到收到和處理順序,但因爲工作()需要很長的時間來完成我需要的線程許多其他的說明,現在,我希望一個線程是發起,在後臺工作,而我們繼續等待指示,除非這沒有發生。焦點保留在新創建的線程上會發生什麼情況,以至於無法接收到進一步的指令。
這是爲什麼?哪裏不對?
非常感謝
可運行代碼將非常有幫助。我非常確定在正確的軌道上使用了falsetru,正如你在主線程中調用work()所顯示的那樣,生成的線程將試圖從work()運行* callable * *,這不是你想要的。 – AdamKG