新聞中心
1、queue的方法

十多年的夏縣網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整夏縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“夏縣網(wǎng)站設(shè)計(jì)”,“夏縣網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
實(shí)例化Queue(),未指定可接收信息的參數(shù)或該參數(shù)為負(fù)數(shù),則默認(rèn)無上限(內(nèi)存上限)
Queue.qsize(): 返回當(dāng)前隊(duì)列包含消息的數(shù)量
Queue.empty(): 判斷隊(duì)列是否為空,是為True,否為False
Queue.full(): 判斷隊(duì)列是否滿了,是為True,否為False
Queue.get([block[,timeout]]): 獲取一條隊(duì)列的消息,然后將其從隊(duì)列中刪除,black默認(rèn)為True
如果block為默認(rèn)值,沒有設(shè)置timeout,消息隊(duì)列又為空,那么此時(shí)程序?qū)?huì)阻塞(停在讀取狀態(tài)),直到隊(duì)列中有值,從消息隊(duì)列中讀取到值.如果設(shè)置了timeout,等待timeout的時(shí)間就會(huì)報(bào)出(Queue.Empty)異常
如果block為False,消息隊(duì)列為空,則會(huì)立刻拋出(Queue.Empty)異常
2、實(shí)例化
from multiprocessing import Queue
q = Queue(3) #在實(shí)例化時(shí)傳入消息隊(duì)列的數(shù)量
q.put("test1")
q.put("test2")
print(q.full()) #這里隊(duì)列未滿,返回False
q.put("test3")
print(q.full()) #這里隊(duì)列已經(jīng)滿了,返回True
try:
q.put("test4", timeout=2) #在寫入時(shí),如果隊(duì)列是滿的,就等待兩秒鐘,如還不可以,拋出異常
except:
print("當(dāng)前消息隊(duì)列的數(shù)量為%s" % q.qsize())
try:
q.put("test4", block=False) # 在寫入時(shí),如果隊(duì)列是滿的,直接拋出異常
except:
print("當(dāng)前消息隊(duì)列的數(shù)量為%s" % q.qsize())
# 在寫入之前,可以判斷下隊(duì)列是否是滿的
if not q.full():
q.put_nowait("test4")
# 同理,在取數(shù)之前,判斷隊(duì)列是否為空
if not q.empty():
for i in range(q.qsize()):
print(q.get_nowait())
以上就是Queue在python實(shí)例化的方法,希望能對(duì)大家有所幫助,更多知識(shí)盡在python學(xué)習(xí)網(wǎng)。
本文標(biāo)題:創(chuàng)新互聯(lián)Python教程:Queue在python的實(shí)例化
轉(zhuǎn)載注明:http://www.fisionsoft.com.cn/article/cdipgsj.html


咨詢
建站咨詢
