阅读量:4
要根据事件停止毫秒sleep,您可以使用线程的join()方法
import threading
import time
# 自定义事件类
class Event:
def __init__(self):
self.is_set = False
def set(self):
self.is_set = True
def is_set(self):
return self.is_set
# 事件监听器类
class EventListener:
def __init__(self, event):
self.event = event
def run(self):
while not self.event.is_set():
time.sleep(0.1) # 每0.1秒检查一次事件是否已设置
print("事件已触发")
# 主程序
def main():
event = Event()
listener = EventListener(event)
# 启动监听器线程
listener_thread = threading.Thread(target=listener.run)
listener_thread.start()
# 模拟执行耗时任务
time.sleep(5)
# 设置事件,使监听器停止sleep
event.set()
# 等待监听器线程结束
listener_thread.join()
if __name__ == "__main__":
main()
在这个示例中,我们创建了一个自定义事件类Event和一个事件监听器类EventListener。事件监听器会不断检查事件是否已设置,如果未设置,则继续等待。当事件被设置时,监听器将停止等待并输出提示信息。
以上就是关于“如何根据事件停止毫秒sleep”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm