日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

什么时候用多线程什么时候用多进程呢?GUL

發(fā)布時(shí)間:2023/12/14 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 什么时候用多线程什么时候用多进程呢?GUL 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

那么在 Python 中什么時(shí)候用多線程什么時(shí)候用多進(jìn)程呢?當(dāng)在CPU-bound(計(jì)算密集型:絕大多數(shù)時(shí)間在計(jì)算) 時(shí)最好用 - 多進(jìn)程, 而在 I/O bound(I/O密集型 : IO 處理 并且 大多時(shí)間是在等待) 的時(shí)候最好用 - 多線程。

python因?yàn)槠淙纸忉屍麈iGIL而無(wú)法通過(guò)線程實(shí)現(xiàn)真正的平行計(jì)算。這個(gè)論斷我們不展開(kāi),但是有個(gè)概念我們要說(shuō)明,IO密集型 vs. 計(jì)算密集型。

IO密集型:讀取文件,讀取網(wǎng)絡(luò)套接字頻繁。

計(jì)算密集型:大量消耗CPU的數(shù)學(xué)與邏輯運(yùn)算,也就是我們這里說(shuō)的平行計(jì)算。

而concurrent.futures模塊,可以利用multiprocessing實(shí)現(xiàn)真正的平行計(jì)算。

核心原理是:concurrent.futures會(huì)以子進(jìn)程的形式,平行的運(yùn)行多個(gè)python解釋器,從而令python程序可以利用多核CPU來(lái)提升執(zhí)行速度。由于子進(jìn)程與主解釋器相分離,所以他們的全局解釋器鎖也是相互獨(dú)立的。每個(gè)子進(jìn)程都能夠完整的使用一個(gè)CPU內(nèi)核。

總結(jié)

以上是生活随笔為你收集整理的什么时候用多线程什么时候用多进程呢?GUL的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。