一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語(yǔ)言編程技術(shù)及教程分享平臺(tái)!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Python - Python多線程編程(一):threading模塊綜述

Python多線程編程(一):threading模塊綜述

2020-05-30 23:03腳本之家 Python

這篇文章主要介紹了Python多線程編程(一):threading模塊綜述,本文講解了threading模塊、Thread類、Queue提供的類等內(nèi)容,需要的朋友可以參考下

Python這門解釋性語(yǔ)言也有專門的線程模型,Python虛擬機(jī)使用GIL(Global Interpreter Lock,全局解釋器鎖)來(lái)互斥線程對(duì)共享資源的訪問(wèn),但暫時(shí)無(wú)法利用多處理器的優(yōu)勢(shì)。在Python中我們主要是通過(guò)thread和 threading這兩個(gè)模塊來(lái)實(shí)現(xiàn)的,其中Python的threading模塊是對(duì)thread做了一些包裝的,可以更加方便的被使用,所以我們使用 threading模塊實(shí)現(xiàn)多線程編程。這篇文章我們主要來(lái)看看Python對(duì)多線程編程的支持。

在語(yǔ)言層面,Python對(duì)多線程提供了很好的支持,可以方便地支持創(chuàng)建線程、互斥鎖、信號(hào)量、同步等特性。下面就是官網(wǎng)上介紹threading模塊的基本資料及功能:

實(shí)現(xiàn)模塊

thread:多線程的底層支持模塊,一般不建議使用;
threading:對(duì)thread進(jìn)行了封裝,將一些線程的操作對(duì)象化。

threading模塊

Thread 線程類,這是我們用的最多的一個(gè)類,你可以指定線程函數(shù)執(zhí)行或者繼承自它都可以實(shí)現(xiàn)子線程功能;

Timer與Thread類似,但要等待一段時(shí)間后才開始運(yùn)行;
Lock 鎖原語(yǔ),這個(gè)我們可以對(duì)全局變量互斥時(shí)使用;
RLock 可重入鎖,使單線程可以再次獲得已經(jīng)獲得的鎖;
Condition 條件變量,能讓一個(gè)線程停下來(lái),等待其他線程滿足某個(gè)“條件”;
Event 通用的條件變量。多個(gè)線程可以等待某個(gè)事件發(fā)生,在事件發(fā)生后,所有的線程都被激活;
Semaphore為等待鎖的線程提供一個(gè)類似“等候室”的結(jié)構(gòu);
BoundedSemaphore 與semaphore類似,但不允許超過(guò)初始值;
Queue:實(shí)現(xiàn)了多生產(chǎn)者(Producer)、多消費(fèi)者(Consumer)的隊(duì)列,支持鎖原語(yǔ),能夠在多個(gè)線程之間提供很好的同步支持。

Thread類

是你主要的線程類,可以創(chuàng)建進(jìn)程實(shí)例。該類提供的函數(shù)包括:
getName(self) 返回線程的名字
isAlive(self) 布爾標(biāo)志,表示這個(gè)線程是否還在運(yùn)行中
isDaemon(self) 返回線程的daemon標(biāo)志
join(self, timeout=None) 程序掛起,直到線程結(jié)束,如果給出timeout,則最多阻塞timeout秒
run(self) 定義線程的功能函數(shù)
setDaemon(self, daemonic) 把線程的daemon標(biāo)志設(shè)為daemonic
setName(self, name) 設(shè)置線程的名字
start(self) 開始線程執(zhí)行

Queue提供的類

Queue隊(duì)列
LifoQueue后入先出(LIFO)隊(duì)列
PriorityQueue 優(yōu)先隊(duì)列

接下來(lái)

接下來(lái)的一系列文章,將會(huì)用一個(gè)一個(gè)示例來(lái)展示threading的各個(gè)功能,包括但不限于:兩種方式起線程、threading.Thread類的重要函數(shù)、使用Lock互斥及RLock實(shí)現(xiàn)重入鎖、使用Condition實(shí)現(xiàn)生產(chǎn)者和消費(fèi)者模型、使用Event和Semaphore多線程通信。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产在线激情视频 | 男人的天堂在线 | 国内精品视频一区二区三区八戒 | 美女扒开胸罩露出奶 | 天天色踪合合 | 99国产精品久久久久久久... | 欧美一级裸片又黄又裸 | 大好硬好深好爽想要视频 | 99在线在线视频免费视频观看 | 欧美一区不卡二区不卡三区 | 国产成人久久久精品一区二区三区 | 日韩欧美在线一区二区三区 | 色播开心网 | 色老板影视 | 国产精品久久久久一区二区三区 | 扒开老师两片湿漉的肉 | 水多多www视频在线观看高清 | 美女胸又大又黄又www小说 | 亚洲欧美一区二区三区在线观看 | 99久久国产综合精品女小说 | 午夜亚洲一区二区福利 | 国产女主播在线播放一区二区 | 午夜国产视频 | 亚洲国产cao | 亚洲欧美精品天堂久久综合一区 | 精品国产一区二区三区在线观看 | 13 sewang41| hd性欧美俱乐部中文 | 四虎影院久久久 | 秋霞鲁丝影院久久人人综合 | 7777奇米四色 | 99久久精品国产免费 | 成全视频在线观看免费 | 色呦呦tv | 全彩成人18h漫画 | 国产福利视频一区二区微拍视频 | 欧美精品久久久久久久免费观看 | 午夜五月天 | 美女露尿口 | 免费看欧美一级特黄a大片一 | 国产馆精品推荐在线观看 |