假設循環爬取10000個網頁,需要開辟10000個線程,這個對cpu和內存會造成一定的消耗,
進程池和線程池?
# 線程池:一次性開辟一些線程,我們用戶之際而給線程池提交任務,這些任務的調度交給線程池來完成from concurrent.futures import ThreadPoolExecutor,ProcessPoolExecutordef func(name):for i in range(100):print(name,i)if __name__ == '__main__':# 創建線程池with ThreadPoolExecutor(50) as t: # 守護線程,with這里會等待線程執行完畢才會跳出來# with ThreadPoolExecutor(50) as t: # 守護進程,改個名字而已 for i in range (100): # 創建100個任務t.submit(func,name=f'線程{i}') # 提交任務 ,name為函數fuc的入參print('運行結束') # 上面運行完執行這個>>>
線程97 99線程9596
線程95 97
線程95 98
線程95 99
運行結束
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态