新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:pythoncondition條件變量

創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供陽新網(wǎng)站建設(shè)、陽新做網(wǎng)站、陽新網(wǎng)站設(shè)計、陽新網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、陽新企業(yè)網(wǎng)站模板建站服務(wù),10多年陽新做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
在py線程的使用上,有三個方式是需要用到的,并且和生產(chǎn)者與消費者有關(guān)系,一個是今天我們要說的條件變量,還有一個是關(guān)于消息隊列,最后一個是協(xié)程方式的使用,這里是包括了兩個形式,線程和協(xié)程,下面就使用condition給大家演示整個執(zhí)行過程,可以作為我們?nèi)蘸笳{(diào)用的模板。
條件變量(Condition)方式,最復(fù)雜的一種
直接給大家貼出代碼:
# 條件變量:鎖功能加入等待和喚醒功能,默認RLock # 兩個線程用一個 cond 鎖,手動喚醒和等待 import time from threading import Thread from threading import Condition cond = Condition() num = 0 def producer(): # 生產(chǎn)者線程 def customer(): # 消費者線程 global num thd1 = Thread(target=producer) thd1.join() # 線程同步-等子線程結(jié)束,主線程再繼續(xù)運行
簡單給大家解釋上面的程序,我們要執(zhí)行工作程序,需要定義好線程,然后讓生產(chǎn)者獲取,當(dāng)消費者碰到時候只能進行等待,當(dāng)執(zhí)行程序滿足條件以后,在傳遞給消費者線程,這樣的一套流程即是條件變量的使用。
當(dāng)前名稱:創(chuàng)新互聯(lián)Python教程:pythoncondition條件變量
文章源于:http://www.dlmjj.cn/article/ccedepo.html


咨詢
建站咨詢
