Что такое threading.Event?

Middle
146 просмотров
AFK Offer AI

Event — механизм сигнализации между потоками. event.set() — устанавливает флаг, event.wait() — блокируется пока флаг не установлен, event.clear() — сбрасывает. Один поток ждёт, другой сигнализирует. Пример: worker-поток ждёт event.wait() пока main-поток не скажет event.set() что данные готовы. wait(timeout=5) — ждёт максимум 5 секунд, возвращает True/False. Проще чем Condition для простых сценариев «один сигналит, остальные ждут».

Следующий вопрос

Что такое task groups в Celery?