在爬取大量数据的过程中由于数据量很大所以需要调用到诸多线程或进程后才能快速帮助我们处理数据
在Python中方法也很简单,需要先导入线程池与进程池的包
from concurrent.futures import ThreadPoolExecutor,ProcessPoolExecutor#线程池:一次性开辟一些线程,我们用户直接给线程池提交任务,线程任务的调度交给线程池来完成#创建一个任务def fn(name):for i in range(100):print(name, i)if __name__ == '__main__':#创建线程池with ThreadPoolExecutor(50) as t: #创建一个50的线程池for i in range(1000): #创建一个1000的任务t.submit(fn, name = f"线程{i}") #submit:提交 ;将创建的线程池提交到执行体并赋予名称print("over!!!")
执行结果展示:
D:\学习软件工具\pycharm\openstack-api\venv\Scripts\python.exe D:/学习软件工具/pycharm/openstack-api/venv/pachong/线程池与进程池.py线程0线程1 0线程1 0线程0 1线程11线程0 2线程0 3线程0 4线程0 25.................略
