def thread1(): # 线程1 print('1') time.sleep(180) def thread2(): # 线程2 print('2') time.sleep(5) print('线程2结束') import threading, time tasks = [] task1 = threading.Thread(target=thread1) task1.setDaemon(True) # 设置线程为守护线程,主线程结束,子线程随之结束,不等待 task1.start() tasks.append(task1) task2 = threading.Thread(target=thread2) task2.setDaemon(True) task2.start() tasks.append(task2) for u in tasks: # join() 主线程等待子线程结束,一直等待,多线程运行时间等于最长子线程的时间 u.join(timeout=6) # 设置线程超时,6s 后线程1随之结束
threading 设置线程超时
最新推荐文章于 2023-12-05 11:58:22 发布
该代码示例展示了如何在Python中使用threading模块创建两个线程,将它们设置为守护线程,并设置join方法的超时。线程1执行时间为180秒,线程2执行时间为5秒。线程2完成后,如果线程1未在6秒内结束,将强制结束。
摘要由CSDN通过智能技术生成