Я обнаружил, что большую часть времени, когда я использую gevent.event.Event
, мой код выглядит примерно так:
old_event = self.some_event
self.some_event = Event()
old_event.set()
С слушателями, которые выглядят примерно так:
while 1:
self.some_event.wait()
… do stuff …
Это "правильный способ сделать это"? Или есть лучший способ уведомить нескольких слушателей о повторяющемся событии?
Ну, вы также можете clear()
событие.
event.set()
event.clear()
Это будет уведомлять слушателей, которые в настоящее время ждут события, но слушатели, которые начинают ждать() позже, будут заблокированы до следующего вызова set()
.