Python 3.2+Исключенияисключение
threading.BrokenBarrierError
модульные исключения
Barrier сломан (сброшен/таймаут), пока поток ждал на нём.
Синтаксис
raise threading.BrokenBarrierError
Главная деталь: если хотя бы один поток вышел из wait() по таймауту, барьер ломается для всех — исключение получат и остальные участники, а не только опоздавший. Тот же эффект даёт явный abort(), которым намеренно разблокируют застрявшие потоки. Вернуть барьер в строй можно только через reset(), причём в момент, когда на нём никто не ждёт.
Примеры
import threading
try:
raise threading.BrokenBarrierError
except threading.BrokenBarrierError as e:
print(type(e).__name__) # → BrokenBarrierError
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности