
Использование Event.wait() в многопоточности Python.
Модуль
Причина, по которой здесь лучше использовать
Затем устанавливаются циклы для проверки, настроено ли событие event. Если это не так, тогда код выведет сообщение и немного подождет перед повторной проверкой. Для установки события можно воспользоваться комбинацией ^Ctrl+C. Как только событие установлено,
Подписывайтесь на канал 👉@pythonofff
Модуль
threading
предоставляет Event()
, которого можно использовать как time.sleep()
. Однако преимущество Event()
в том, что он более отзывчив. Причина в том, что когда событие установлено, программа сразу выходит из цикла. В Python с time.sleep()
коду надо будет подождать завершения вызова sleep()
до выхода из потока.Причина, по которой здесь лучше использовать
wait()
в том, что он не блокируется, в то время, как time.sleep()
блокируется. Это значит, что при использовании time.sleep()
вы заблокируете выполнение основного потока, пока тот будет ждать завершения вызова sleep(). wait()
решает данную проблему.Затем устанавливаются циклы для проверки, настроено ли событие event. Если это не так, тогда код выведет сообщение и немного подождет перед повторной проверкой. Для установки события можно воспользоваться комбинацией ^Ctrl+C. Как только событие установлено,
worker()
вернется, и цикл оборвется, завершив программуПодписывайтесь на канал 👉@pythonofff