2016-01-23 63 views
1

我知道在Python中,我們可以使用time.sleep(1)睡眠當前線程一秒鐘。但是我想要的是讓所有的線程都睡覺,否則我的程序會出現一些併發問題。任何人都知道如何做到這一點?如何睡眠Python中的所有線程

+1

如果更改的線程處於不一致或無效狀態,一個線程突然更改另一個線程的執行可能會導致嚴重的甚至嚴重的線程安全問題。您可能需要使用協作方法,每個線程都會自行檢查是否已發出睡眠請求,以便在睡眠之前確保其自身狀態一致。 – scottb

+0

到目前爲止你有什麼嘗試過嗎? 正如@scottb所提到的那樣,這可能會導致嚴重的問題,因爲線程可能正在做重要的工作。 – Demitrian

+0

您可能想要構建類似線程池的東西。當你把一條線睡着時,其他所有的人都會等待它。像這樣:http://stackoverflow.com/a/3034000/5818240 –

回答

1

我建議您使用Semaphore s,RLock s和/或Events

閱讀manual並享受它! ;-)