進(jìn)程和線程
什么是進(jìn)程?
進(jìn)程就是正在運(yùn)行的程序, 一個(gè)任務(wù)就是一個(gè)進(jìn)程, 進(jìn)程的主要工作是管理資源, 而不是實(shí)現(xiàn)功能
什么是線程?
線程的主要工作是去實(shí)現(xiàn)功能, 比如執(zhí)行計(jì)算.
線程和進(jìn)程的關(guān)系就像員工與老板的關(guān)系,
老板(進(jìn)程) 提供資源 和 工作空間,
員工(線程) 負(fù)責(zé)去完成相應(yīng)的任務(wù)
特點(diǎn)
一個(gè)進(jìn)程至少由一個(gè)線程, 這一個(gè)必須存在的線程被稱為主線程, 同時(shí)一個(gè)進(jìn)程也可以有多個(gè)線程, 即多線程
當(dāng)我們我們遇到一些需要重復(fù)執(zhí)行的代碼時(shí), 就可以使用多線程分擔(dān)一些任務(wù), 進(jìn)而加快運(yùn)行速度
線程的實(shí)現(xiàn)
線程模塊
Python通過兩個(gè)標(biāo)準(zhǔn)庫_thread和threading, 提供對線程的支持 , threading對_thread進(jìn)行了封裝。
threading模塊中提供了Thread , Lock , RLock , Condition等組件。
因此在實(shí)際的使用中我們一般都是使用threading來實(shí)現(xiàn)多線程
線程包括子線程和主線程:
主線程 : 當(dāng)一個(gè)程序啟動時(shí) , 就有一個(gè)線程開始運(yùn)行 , 該線程通常叫做程序的主線程
子線程 : 因?yàn)槌绦蚴情_始時(shí)就執(zhí)行的 , 如果你需要再創(chuàng)建線程 , 那么創(chuàng)建的線程就是這個(gè)主線程的子線程
主線程的重要性體現(xiàn)在兩方面 :
是產(chǎn)生其他子線程的線程
通常它必須最后完成執(zhí)行, 比如執(zhí)行各種關(guān)閉操作
Thread類
常用參數(shù)說明
1.《python多線程 python中的線程與線程池》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識,僅代表作者本人觀點(diǎn),與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《python多線程 python中的線程與線程池》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進(jìn)行證實(shí),對其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。
3.文章轉(zhuǎn)載時(shí)請保留本站內(nèi)容來源地址,http://f99ss.com/keji/347676.html