Pythonスレッドをブロックおよび再開する方法とは
Pythonでスレッドをブロックおよび再開する方法がいくつかあります。
- threading.Lock()
- lock.ロック()
- ロックを解放します
import threading
lock = threading.Lock()
# 阻塞线程
lock.acquire()
# 恢复线程
lock.release()
- threading.Condition()
- condition.wait()
- condition.notifyAll()
- condition.notifyAll();
import threading
condition = threading.Condition()
# 阻塞线程
condition.wait()
# 恢复线程
condition.notify()
- threading.Event()
- イベント.wait()
- event.set()
import threading
event = threading.Event()
# 阻塞线程
event.wait()
# 恢复线程
event.set()
- スレッド用セマフォ
- セマフォ.アックアイヤー()
- セマフォの解放
import threading
semaphore = threading.Semaphore()
# 阻塞线程
semaphore.acquire()
# 恢复线程
semaphore.release()
以上の方法はすべてスレッドのブロックと再開を実現しており、状況に応じて適する方法を選択してください。