這篇文章將為大家詳細(xì)講解有關(guān)python多線程和多進(jìn)程之間有什么關(guān)系,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
關(guān)于多線程的大概講解:
在Python的標(biāo)準(zhǔn)庫中給出了2個模塊:_thread和threading,_thread是低級模塊不支持守護(hù)線程,當(dāng)主線程退出了時,全部子線程都會被強(qiáng)制退出了。而threading是高級模塊,用作對_thread進(jìn)行了封裝支持守護(hù)線程。在大部分狀況下人們只需要采用threading這個高級模塊即可。
關(guān)于多進(jìn)程的大概講解:
多進(jìn)程是multiprocessing模塊給出遠(yuǎn)程與本地的并發(fā),在一個multiprocessing庫的采用場景下,全部的子進(jìn)程全是由一個父進(jìn)程運(yùn)行來的,這個父進(jìn)程變成madter進(jìn)程,它會管理一系列的對象狀態(tài)下,如果一旦這個進(jìn)程退出了,子進(jìn)程很可能處在一個不穩(wěn)定的狀態(tài)下,那么這個父進(jìn)程盡量要少做事來維持其穩(wěn)定性
所以python多線程和多進(jìn)程的區(qū)別如下:
多線程中,全部子線程的進(jìn)程號一樣;多進(jìn)程中,不一樣的子進(jìn)程進(jìn)程號不一樣
線程共享內(nèi)存空間;進(jìn)程的內(nèi)存是獨(dú)立的
多線程可以共享全局變量,多進(jìn)程做不到
同一個進(jìn)程的線程之間可以直接交流;2個進(jìn)程想通信,必須通過一個中間代理來實現(xiàn)
一個線程可以控制和操作同一進(jìn)程里的其他線程;但是進(jìn)程只能操作子進(jìn)程
創(chuàng)建新線程很簡單;創(chuàng)建新進(jìn)程需要對其父進(jìn)程進(jìn)行一次克隆
關(guān)于python多線程和多進(jìn)程之間有什么關(guān)系就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
分享文章:python多線程和多進(jìn)程之間有什么關(guān)系-創(chuàng)新互聯(lián)
URL分享:http://chinadenli.net/article30/iddpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、建站公司、商城網(wǎng)站、網(wǎng)站建設(shè)、用戶體驗、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)