最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python queue隊列原理與應(yīng)用案例分析

 更新時間:2019年09月27日 10:59:48   作者:以夢為馬越騎越傻  
這篇文章主要介紹了Python queue隊列原理與應(yīng)用,結(jié)合具體案例形式分析了Python queue隊列的原理、功能、實現(xiàn)方法與使用技巧,需要的朋友可以參考下

本文實例講述了Python queue隊列原理與應(yīng)用。分享給大家供大家參考,具體如下:

作用:

   解耦:使程序直接實現(xiàn)松耦合,修改一個函數(shù),不會有串聯(lián)關(guān)系。

   提高處理效率:FIFO?。健‖F(xiàn)進先出,LIFO?。健『笕胂瘸觥?/p>

隊列:

  隊列可以并發(fā)的派多個線程,對排列的線程處理,并切每個需要處理線程只需要將請求的數(shù)據(jù)放入隊列容器的內(nèi)存中,線程不需要等待,當排列完畢處理完數(shù)據(jù)后,線程在準時來取數(shù)據(jù)即可。請求數(shù)據(jù)的線程只與這個隊列容器存在關(guān)系,處理數(shù)據(jù)的線程down掉不會影響到請求數(shù)據(jù)的線程,隊列會派給其他線程處理這分數(shù)據(jù),它實現(xiàn)了解耦,提高效率。隊列內(nèi)會有一個有順序的容器,列表與這個容器是有區(qū)別的,列表中數(shù)據(jù)雖然是排列的,但數(shù)據(jù)被取走后還會保留,而隊列中這個容器的數(shù)據(jù)被取后將不會保留。當必須在多個線程之間安全地交換信息時,隊列在線程編程中特別有用。

參數(shù)介紹:

# 先入先出 maxsize 可設(shè)置大小,設(shè)置block=False拋異常
class queue.Queue(maxsize=0)
 # 后進先出
class queue.LifoQueue(maxsize=0)
# 存儲數(shù)據(jù)時可設(shè)置優(yōu)先級的隊列
# 優(yōu)先級設(shè)置數(shù)越小等級越高
class queue.PriorityQueue(maxsize=0)
# 放入數(shù)據(jù)
Queue.put(item, block=True, timeout=None)
# 取出數(shù)據(jù) #沒有數(shù)據(jù)將會等待
Queue.get(block=True, timeout=None)
# 如果1秒后沒取到數(shù)據(jù)就退出
Queue.get(timeout = 1)
# 取數(shù)據(jù),如果沒數(shù)據(jù)拋queue.Empty異常
Queue.get_nowait()
# 查看隊列大小
Queue.qsize()
# 返回True,如果空
Queue.empty() #return True if empty
# 設(shè)置隊列大小
Queue.full()
# 后續(xù)調(diào)用告訴隊列,任務(wù)的處理是完整的。
Queue.task_done()

生產(chǎn)者消費者模型:

import threading,time
import queue
# 最多存入10個
q = queue.Queue(maxsize=10)
def producer(name):
  count = 1
  while True:
      # 生產(chǎn)一塊骨頭
      q.put("骨頭 %s" % count )
      print("生產(chǎn)了骨頭",count)
      count +=1
      time.sleep(0.3)
def consumer(name):
  while True:
    print("%s 取到[%s] 并且吃了它" %(name, q.get()))
    time.sleep(1)
    # 告知這個任務(wù)執(zhí)行完了
    q.task_done()
# 生成線程
p = threading.Thread(target=producer,args=("德國骨科",))
c = threading.Thread(target=consumer,args=("陳狗二",))
d = threading.Thread(target=consumer,args=("呂特黑",))
# 執(zhí)行線程
p.start()
c.start()
d.start()

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python加密解密算法與技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進階經(jīng)典教程

希望本文所述對大家Python程序設(shè)計有所幫助。

相關(guān)文章

  • django model去掉unique_together報錯的解決方案

    django model去掉unique_together報錯的解決方案

    本文給大家分享的是在使用django model去掉unique_together時報錯的解決思路和具體步驟,提供給大家參考下,希望對大家學習使用django能夠有所幫助
    2016-10-10
  • Python如何實現(xiàn)均直方圖均衡化

    Python如何實現(xiàn)均直方圖均衡化

    這篇文章主要介紹了Python如何實現(xiàn)均直方圖均衡化問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • 基于Python編寫一個簡單的服務(wù)注冊發(fā)現(xiàn)服務(wù)器

    基于Python編寫一個簡單的服務(wù)注冊發(fā)現(xiàn)服務(wù)器

    我們都知道有很多的非常著名的注冊服務(wù)器,例如:?Consul、ZooKeeper、etcd,甚至借助于redis完成服務(wù)注冊發(fā)現(xiàn)。但是本篇文章我們將使用python?socket寫一個非常簡單的服務(wù)注冊發(fā)現(xiàn)服務(wù)器,感興趣的可以了解一下
    2023-04-04
  • python請求域名requests.(url = 地址)報錯

    python請求域名requests.(url = 地址)報錯

    本文主要介紹了python請求域名requests.(url = 地址)報錯,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • python使用pypdf2實現(xiàn)pdf文檔解密

    python使用pypdf2實現(xiàn)pdf文檔解密

    利用pypdf2完成pdf的解密,這里的事例是python3環(huán)境下的,當然python2下也可以運行,只需要修改名稱即可,文中通過代碼示例給大家介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • 在python中pandas讀文件,有中文字符的方法

    在python中pandas讀文件,有中文字符的方法

    今天小編就為大家分享一篇在python中pandas讀文件,有中文字符的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Django-xadmin+rule對象級權(quán)限的實現(xiàn)方式

    Django-xadmin+rule對象級權(quán)限的實現(xiàn)方式

    今天小編就為大家分享一篇Django-xadmin+rule對象級權(quán)限的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 詳解Python3中setuptools、Pip安裝教程

    詳解Python3中setuptools、Pip安裝教程

    這篇文章主要介紹了詳解Python3中setuptools、Pip安裝教程,文中給大家提到了注意事項,需要的朋友可以參考下
    2019-06-06
  • Python實現(xiàn)消消樂小游戲

    Python實現(xiàn)消消樂小游戲

    這篇文章主要為大家詳細介紹了Python實現(xiàn)消消樂小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • python中subprocess實例用法及知識點詳解

    python中subprocess實例用法及知識點詳解

    在本篇文章里小編給大家分享的是關(guān)于python中subprocess實例用法及知識點詳解內(nèi)容,有需要的朋友們可以跟著學習下。
    2021-10-10

最新評論

峨山| 开平市| 奉新县| 抚顺市| 南昌市| 平遥县| 会宁县| 兖州市| 郓城县| 蒙城县| 子长县| 耒阳市| 九龙城区| 西林县| 永和县| 扶风县| 萨迦县| 比如县| 怀来县| 上栗县| 乌恰县| 嘉峪关市| 合阳县| 樟树市| 宜春市| 武鸣县| 盐池县| 乐清市| 辛集市| 渝北区| 山丹县| 北辰区| 满城县| 温州市| 诸暨市| 随州市| 滕州市| 通州市| 凤台县| 临邑县| 苍山县|