新聞中心
我們?cè)谑褂枚嗑€程時(shí)候,有沒(méi)有聽(tīng)過(guò)“消息隊(duì)列”這個(gè)名詞呢?先從字面上跟大家說(shuō)下,隊(duì)列就是盡然有序的排隊(duì),消息,肯定是跟傳遞有關(guān),這樣大家組合起來(lái)就應(yīng)該知道什么是消息隊(duì)列了吧,那就是把收取的內(nèi)容進(jìn)行井然有序的傳遞下去,在大家理解的基礎(chǔ)上,看下文內(nèi)容吧~

專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)雙牌免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了1000+企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
線程間通信:消息隊(duì)列
主要方式:
通過(guò)變量,直接讀寫;通過(guò)消息隊(duì)列;
消息隊(duì)列:
from queue import Queue
Queue與多進(jìn)程中的類似,主要方法:
方法說(shuō)明:
給大家演示實(shí)例:
import threading
from queue import Queue
#消息隊(duì)列
msgq = Queue()
def recvmsg(*args, **kwargs):
#線程函數(shù),接受消息
while True:
msg = msgq.get()
print('rev msg:', msg)
if msg == 'q':
break
def sendmsg():
#發(fā)送消息
while True:
msg = input('enter:')
msgq.put(msg)
if msg == 'q':
break
if __name__ == '__main__':
#創(chuàng)建線程
t1 = threading.Thread(target=recvmsg)
t1.start()
sendmsg()
t1.join()結(jié)果:
enter:1 rev msg: 1 enter:2 rev msg: 2 enter:3 rev msg: 3 enter:q rev msg: q
消息隊(duì)列是我們經(jīng)常要要用到的,靈活的掌握使用是至關(guān)重要的,大家如果正在學(xué)習(xí)線程,關(guān)于消息隊(duì)列一定是首當(dāng)其沖要去了解哦~
文章名稱:創(chuàng)新互聯(lián)Python教程:python多線程中消息隊(duì)列如何實(shí)現(xiàn)?
鏈接URL:http://m.fisionsoft.com.cn/article/djccogs.html


咨詢
建站咨詢
