簡體   English   中英

在 Python 的多處理模塊中打印來自並行進程的數據

[英]Print data from parallel processes in Python's multiprocessing module

我在 Python 中使用multiprocessing模塊來創建 2 個處理相同實時數據的進程,並希望在控制台上打印它們各自的調試信息和結果。

那怎么辦呢? AFAIK,只有一個進程接管用於執行程序的控制台,另一個進程無法在任何控制台上記錄其打印輸出。

def fa():
    global live_data
    print(f'from fa {live_data}')

def fb():
    global live_data
    print(f'from fb {live_data}')

processes_list=[]
pa=Process(target=fa, args=())
pb=Process(target=fb, args=())
pa.start()
pb.start()

我只在控制台上得到fafb函數之一的輸出。

如果我是對的,那么您的問題是變量不能在多處理時在進程之間共享。 如果這是您的問題,您可以通過使用多處理中的管理器功能來傳輸數據來解決它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM