使用Queue完成程序間通訊

2021-10-01 04:41:14 字數 917 閱讀 7386

#!/usr/bin/env python 

# -*- coding:utf-8 -*-

import multiprocessing

import time

defdownload

(q):

""" """

data =[11

,22,33

,44]# 向佇列中寫入資料

for temp in data:

q.put(temp)

print

("寫入完成。。。"

)def

analysis

(q):

""" 模擬分析

"""waiting =

list()

# 從佇列中獲取資料

while

true

: data = q.get(

)if q.empty():

break

print

(waiting)

defmain()

:# 建立乙個佇列

q= multiprocessing.queue(

)# 建立多個程序,將佇列的引用當做實參進行傳遞

p1 = multiprocessing.process(target=download,args=

(q,)

) p2 = multiprocessing.process(target=analysis,args=

(q,)

) p1.start(

) time.sleep(1)

p2.start(

)if __name__ ==

'__main__'

: main(

)

程序間通訊 Queue

process之間有時需要通訊,作業系統提供了很多機制來實現程序間的通訊。可以使用multiprocessing模組的queue實現多程序之間的資料傳遞,queue本身是乙個訊息列隊程式,首先用乙個小例項來演示一下queue的工作原理 coding utf 8 from multiprocessin...

程序間通訊 Queue

可以使用multiprocessing模組的queue實現多程序之間的資料傳遞,queue本身是乙個訊息列隊程式,首先用乙個小例項來演示一下queue的工作原理 coding utf 8 from multiprocessing import queue q queue 3 初始化乙個queue物件...

程序間通訊 Queue

process之間有時需要通訊,作業系統提供了很多機制來實現程序間的通訊。可以使用multiprocessing模組的queue實現多程序之間的資料傳遞,queue本身是乙個訊息列隊程式,首先用乙個小例項來演示一下queue的工作原理 coding utf 8 from multiprocessin...