



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第python的生產者和消費者模式生產者消費者模式是通過一個容器來解決生產者和消費者的強耦合問題。生產者和消費者彼此之間不直接通訊,而通過阻塞隊列來進行通訊,所以生產者生產完數(shù)據之后不用通過等待消費者處理,直接扔給阻塞隊列,消費者不著生產者拿數(shù)據,而是直接從阻塞隊列中取,阻塞隊列相當于一個緩沖區(qū),平衡了生產者和消費者的處理能力。
四、代碼案例
1、定義一個生產者
importthreading
importqueue
importtime
#定義一個生產者
defproducer():
count=0
#判斷隊列中任務的數(shù)量
whileq.qsize()5:
print('第%s頓飯......',count)
q.put(count)
count+=1
time.sleep(1)
2、定義一個消費者
importthreading
importqueue
importtime
#定義一個消費者
defconsumer(name):
whileTrue:
print("%s吃了第%s飯"%(name,q.get()))
3、定義一個隊列
importthreading
importqueue
importtime
#定義一個隊列
q=queue.Queue(maxsize=4)
t1=threading.Thread(target=producer)
t2=threading.Thread(target=consumer,args=('jibu',))
t1.start()
t2.start()
結果:
第%s頓飯......0
jibu吃了第0飯
第%s頓飯......1
jibu吃了第1飯
第%s頓飯......2
jibu吃了第2飯
第%s頓飯......3
jibu吃了第3飯
第%s頓飯......4
jibu吃了第4飯
第%s頓飯......5
jibu吃了第5飯
第%s頓飯......6
jibu吃了第6飯
第%s頓飯......7
jibu吃了第7飯
第%s頓飯......8
#另外,如果供大于求或者求大于供,可以在相對小的一方在增加線程的數(shù)量
當然如果需要進一步優(yōu)化可以讓消費者執(zhí)行完隊列中所有任務的時候告訴生產者一聲
importthreading
importqueue
importtime
#定義一個生產者
defproducer():
count=0
#判斷隊列中任務的數(shù)量
foriinrange(5):
print('第%s頓飯......',count)
q.put(count)
count+=1
time.sleep(1)
q.join()
#定義一個消費者
defconsumer(name):
whileTrue:
print("
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《幼兒園教育基礎》電子教案-第1單元
- 宏志助航計劃就業(yè)能力培訓體系
- 美團招聘文員培訓
- 《托育服務政策法規(guī)與職業(yè)倫理》課件-第五章
- 《論甲午海戰(zhàn)談》課件
- 獨立結算協(xié)議書
- 達人經濟代理合同協(xié)議
- 校園環(huán)保協(xié)議書
- 車位廠房轉讓合同協(xié)議
- 河壩合同協(xié)議書
- 2025網絡安全協(xié)議合同
- 混凝土考試試題及答案
- 廣東2025年廣東省生物制品與藥物研究所招聘12人筆試歷年參考題庫附帶答案詳解
- 2024北京西城區(qū)五年級(下)期末英語試題及答案
- 《古埃及文明》課件
- 歷屆全國初中應用物理知識競賽匯編
- 國企筆試招聘題目
- 醫(yī)院培訓課件:《西門子Syngo.via工作站的臨床應用》
- 企業(yè)刑事合規(guī)培訓課件
- 訂做門合同協(xié)議范本
- 2025年新版《保障中小企業(yè)款項支付條例》解讀學習課件
評論
0/150
提交評論