繁体   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