阅读量:0
要终止线程池中的线程,可以使用ThreadPoolExecutor
类的shutdown()
方法。
下面是一个例子,展示如何使用ThreadPoolExecutor
创建线程池,并在需要时终止其中的线程:
from concurrent.futures import ThreadPoolExecutor import time def task(): print("Thread started") time.sleep(5) print("Thread finished") # 创建线程池 executor = ThreadPoolExecutor(max_workers=5) # 提交任务到线程池 executor.submit(task) # 终止线程池中的线程 executor.shutdown()
在上面的例子中,使用ThreadPoolExecutor
创建了一个最大线程数为5的线程池。然后,通过submit()
方法提交了一个任务到线程池中。最后,调用shutdown()
方法终止线程池中的线程。
需要注意的是,shutdown()
方法会等待所有已提交的任务执行完毕后再终止线程池中的线程。如果想立即终止线程池中的线程,可以使用shutdown_now()
方法。
# 立即终止线程池中的线程 executor.shutdown_now()
需要注意的是,使用shutdown_now()
方法终止线程池中的线程可能会导致未完成的任务被取消。