2023/12/30 共 649 字,约 2 分钟
程序员

Threading Event

import threading

event = threading.Event()
event.wait(5)

class Checker(threading.Thread):
    def __init__(self, event):
        super().__init__()
        self.event = event

    def run(self):
        while not self.event.is_set():
            print("check data in redis")
            time.sleep(60)

trigger_async_task()
event = threading.Event()
checker = Checker(event)
checker.start()
if user_cancel_task():
    event.set()


import threading
import time

def worker(event):
    print("Worker thread is waiting.")
    event.wait()
    print("Worker thread is awake and continuing.")

def main():
    event = threading.Event()

    thread = threading.Thread(target=worker, args=(event,))
    thread.start()

    time.sleep(3)
    print("Main thread is notifying the worker.")
    event.set()

    thread.join()

Document

Search

    Table of Contents