python中線程和進(jìn)程的區(qū)別有哪些

這篇文章主要介紹了python中線程和進(jìn)程的區(qū)別有哪些,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

為臨夏等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及臨夏網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、臨夏網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

引入進(jìn)程和線程的概念及區(qū)別

threading模塊提供的類:  

Thread, Lock, Rlock, Condition, [Bounded]Semaphore, Event, Timer, local。

1.什么是進(jìn)程

計(jì)算機(jī)程序只不過(guò)是磁盤中可執(zhí)行的二進(jìn)制(或其他類型)的數(shù)據(jù)。它們只有在被讀取到內(nèi)存中,被操作系統(tǒng)調(diào)用的時(shí)候才開(kāi)始它們的生命期。

進(jìn)程(有時(shí)被稱為重量級(jí)進(jìn)程)是程序的一次執(zhí)行。每個(gè)進(jìn)程都有自己的地址空間、內(nèi)存、數(shù)據(jù)棧及其它記錄其運(yùn)行軌跡的輔助數(shù)據(jù)。

操作系統(tǒng)管理在其上運(yùn)行的所有進(jìn)程,并為這些進(jìn)程公平的分配時(shí)間,進(jìn)程也可以通過(guò)fork和spawn操作來(lái)完成其它的任務(wù)。

不過(guò)各個(gè)進(jìn)程有自己的內(nèi)存空間、數(shù)據(jù)棧等,所以只能使用進(jìn)程間通訊,而不能直接共享信息。

2.線程的基本概念

線程是進(jìn)程中執(zhí)行運(yùn)算的最小單位,是進(jìn)程中的一個(gè)實(shí)體,是被系統(tǒng)獨(dú)立調(diào)度和分派的基本單位,線程自己不擁有系統(tǒng)資源,只擁有一點(diǎn)在運(yùn)行中必不可少的資源,但它可與同屬一個(gè)進(jìn)程的其它線程共享進(jìn)程所擁有的全部資源。一個(gè)線程可以創(chuàng)建和撤消另一個(gè)線程,同一進(jìn)程中的多個(gè)線程之間可以并發(fā)執(zhí)行。

 3、線程和進(jìn)程的關(guān)系以及區(qū)別?

進(jìn)程和線程的關(guān)系:

(1)一個(gè)線程只能屬于一個(gè)進(jìn)程,而一個(gè)進(jìn)程可以有多個(gè)線程,但至少有一個(gè)線程。

(2)資源分配給進(jìn)程,同一進(jìn)程的所有線程共享該進(jìn)程的所有資源。

(3)處理機(jī)分給線程,即真正在處理機(jī)上運(yùn)行的是線程

(4)線程在執(zhí)行過(guò)程中,需要協(xié)作同步。不同進(jìn)程的線程間要利用消息通信的辦法實(shí)現(xiàn)同步。線程是指進(jìn)程內(nèi)的一個(gè)執(zhí)行單元,也是進(jìn)程內(nèi)的可調(diào)度實(shí)體.

進(jìn)程與線程的區(qū)別:

(1)調(diào)度:線程作為調(diào)度和分配的基本單位,進(jìn)程作為擁有資源的基本單位

(2)并發(fā)性:不僅進(jìn)程之間可以并發(fā)執(zhí)行,同一個(gè)進(jìn)程的多個(gè)線程之間也可并發(fā)執(zhí)行

(3)擁有資源:進(jìn)程是擁有資源的一個(gè)獨(dú)立單位,線程不擁有系統(tǒng)資源,但可以訪問(wèn)隸屬于進(jìn)程的資源.

(4)系統(tǒng)開(kāi)銷:在創(chuàng)建或撤消進(jìn)程時(shí),由于系統(tǒng)都要為之分配和回收資源,導(dǎo)致系統(tǒng)的開(kāi)銷明顯大于創(chuàng)建或撤消線程時(shí)的開(kāi)銷。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享python中線程和進(jìn)程的區(qū)別有哪些內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問(wèn)題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!

本文名稱:python中線程和進(jìn)程的區(qū)別有哪些
新聞來(lái)源:http://www.muchs.cn/article6/ijchig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、網(wǎng)站改版網(wǎng)站內(nèi)鏈、面包屑導(dǎo)航、關(guān)鍵詞優(yōu)化網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站