亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

python多線程和多進程關系詳解

瀏覽:31日期:2022-07-02 13:03:29
關于多線程的大概講解:

在Python的標準庫中給出了2個模塊:_thread和threading,_thread是低級模塊不支持守護線程,當主線程退出了時,全部子線程都會被強制退出了。而threading是高級模塊,用作對_thread進行了封裝支持守護線程。在大部分狀況下人們只需要采用threading這個高級模塊即可。

關于多進程的大概講解:

多進程是multiprocessing模塊給出遠程與本地的并發,在一個multiprocessing庫的采用場景下,全部的子進程全是由一個父進程運行來的,這個父進程變成madter進程,它會管理一系列的對象狀態下,如果一旦這個進程退出了,子進程很可能處在一個不穩定的狀態下,那么這個父進程盡量要少做事來維持其穩定性

所以python多線程和多進程的區別如下:

多線程中,全部子線程的進程號一樣;多進程中,不一樣的子進程進程號不一樣

線程共享內存空間;進程的內存是獨立的

多線程可以共享全局變量,多進程做不到

同一個進程的線程之間可以直接交流;2個進程想通信,必須通過一個中間代理來實現

一個線程可以控制和操作同一進程里的其他線程;但是進程只能操作子進程

創建新線程很簡單;創建新進程需要對其父進程進行一次克隆

內容擴展:

python多進程、多線程之聯系與區別

進程

概念:進程是操作系統分配資源的最小單元

理解:一個應用程序至少包括1個進程,每個進程在執行過程中擁有獨立的內存單元,python的多進程編程主要依靠multiprocess模塊。

進程間通信:首先,進程間是可以相互通信的,比較常見的有七種通信方式,如管道pipe、命名管道FIFO、消息隊列MessageQueue、共享內存SharedMemory、信號量Semaphore、套接字Socket、信號 signal(由于實際開發涉及較少,這里只作簡單介紹)但是通常進程之間是相互獨立的,每個進程都有獨立的內存。通過共享內存(nmap模塊),進程之間可以共享對象,使多個進程可以訪問同一個變量(地址相同,變量名可能不同)。多進程共享資源必然會導致進程間相互競爭,所以應該盡最大可能防止使用共享狀態。

線程

概念:線程是操作系統調度的最小單元

理解:1個進程包括1個或多個線程,相比較之下,線程占用資源更少,更高效,且一個進程的多個線程在執行過程中共享內存,毫無疑問,線程之間可以相互通信。而python的多進程編程主要依靠threading模塊

線程間通信:主要有兩種方式,一種是上鎖,上互斥鎖確保任意時刻只有一個線程具備修改全局變量的能力。另一種則是使用消息隊列,比較經典的生產者、消費者模型就是這樣,一個負責生成,一個負責消費,所生成的產品存放在queue里,實現了不同線程間溝通。

多進程跟多線程的區別

由于進程的創建跟銷毀都涉及到系統資源的分配以及回收,導致多進程的開銷明顯大于多線程的開銷。

兩者的應用場景

對CPU密集型代碼(比如循環計算) - 多進程效率更高

對IO密集型代碼(比如文件操作,網絡爬蟲) - 多線程效率更高

理由:對于IO密集型操作,大部分消耗時間其實是等待時間,在等待時間中CPU是不需要工作的,那你在此期間提供雙CPU資源也是利用不上的,相反對于CPU密集型代碼,2個CPU干活肯定比一個CPU快很多。那么為什么多線程會對IO密集型代碼有用呢?這時因為python碰到等待會釋放GIL供新的線程使用,實現了線程間的切換。

到此這篇關于python多線程和多進程關系詳解的文章就介紹到這了,更多相關python多線程和多進程之間的聯系內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 大香萑75久久精品免费 | 香蕉视频在线观看免费国产婷婷 | 一区二区三区四区精品 | 国产精品久久久久久爽爽爽 | 免费看黄色网址 | aaaaaa毛片免费看 | 九九视频免费在线观看 | 风间中文字幕亚洲一区中文馆 | 激情在线日韩视频免费 | 有码中文字幕 | 国产欧美亚洲精品第一页青草 | 国产91在线|亚洲 | 国产黄色影视 | 欧美一级日韩 | a毛片基地免费全部香蕉 | 欧美一级毛片免费播放aa | 成人在线视频免费看 | 亚洲永久中文字幕在线 | 91探花视频在线观看 | 精品视频 久久久 | 久久久国产在线 | 久久国产乱子伦精品岳两 | 精品三级国产一区二区三区四区 | 天天影视综合网色综合国产 | 成年美女xx网站高清视频 | 欧美一级看片免费观看视频在线 | 国产萝控精品福利视频免费 | 国产a久久精品一区二区三区 | 亚洲欧美一区二区三区综合 | 欧美日韩在线视频不卡一区二区三区 | 国产资源在线视频 | 第一区 | 国产chiese在线视频 | 亚洲综合激情六月婷婷在线观看 | 韩国十八禁毛片无遮挡 | 成人入口 | 国产真实伦偷精品 | 亚洲成人福利在线观看 | 国产欧美精品区一区二区三区 | 123456成年免费视频 | 国产91久久精品 |