Python可以配置线程池,线程池的作用:
预先开启设定的线程。当一个线程结束以后可以让程序继续使用该线程。
设置线程的最大数目,让系统不至于因为开启多个线程而崩溃。
在有大量空闲时间的进程中,配置多线程可以让程序并行处理,提高处理速度。
线程池的基类是 concurrent.futures 模块中的 Executor,Executor 提供了两个子类,即 ThreadPoolExecutor 和 ProcessPoolExecutor,其中 ThreadPoolExecutor 用于创建线程池,而 ProcessPoolExecutor 用于创建进程池。
使用线程池来执行线程任务的步骤如下:
def fun(index):
print(index)
time.sleep(3)
from concurrent.futures import ThreadPoolExecutor
theard_pool = ThreadPoolExecutor(max_workers=2)
for i in range(1000):
thread_pool.submit(fun, i)
thread_pool.shutdown(wait= True)
有这么几个问题: