Python time.sleep () против event.wait ()
Я хочу регулярно выполнять действия в своем многопоточном приложении Python. Я видел два разных способа сделать это
exit = False
def thread_func():
while not exit:
action()
time.sleep(DELAY)
или же
exit_flag = threading.Event()
def thread_func():
while not exit_flag.wait(timeout=DELAY):
action()
Есть ли преимущество одного пути перед другим? Используете ли вы меньше ресурсов или играете лучше с другими потоками и GIL? Что делает остальные темы в моем приложении более отзывчивыми?
(Предположим, некоторые внешние наборы событийexit
или жеexit_flag
и я готов дождаться полной задержки при выключении)