第IVマルチプロセスキュー

1  インポートマルチプロセッシング
 2  
。3  '' ' 
4  、Q = multiprocessing.Queue(3)
 。5  q.put(1)
 。6  q.put_nowait(0)
 。7  q.get()
 。8  q.get_nowait()
 。9  q.full()
 10  q.empty()
 。11  位配置要素の数は、GETメソッドとしてブロックされた状態で定義されたプログラムを超えます。両方は、プログラム終了するように強制)(所与q.get_nowaitを呼び出すことによって許容することができる
 12である ' '' 
13である 
14  DEF put_data(Q):
 15      "" " 書き込みデータ" "" 
16      。データ= [11、22 33は、44であり、あります、55、66 ]
 。17       X データ:
 18のIS         q.put(X)
 。19      プリント' .............データ書き込み完了............ ' 20は 
21である DEFのdownload_data(Q):
 22であります     "" " データ処理"、 "" 
23は、      データ= リスト()
 24      一方TRUE:
 25          data.append(q.get())
 26がある         場合 q.empty)(:  データがブロック状態にない完全取る
27              BREAK 
28      プリント(データ)
 29      の印刷' データが終了処理' 30  
31である DEF メイン():
 32     Q = multiprocessing.Queue(10 33      P2 = multiprocessing.Process(目標= download_data、引数= (Q))
 34      P1 = multiprocessing.Process(目標= put_data、引数= (Q))
 35      p1.start()
 36      p2.start()
 37  
38  
39  なら __name__ == ' __main__ ' 40      (メイン)

 

おすすめ

転載: www.cnblogs.com/kogmaw/p/12575457.html