小编Joh*_*ohn的帖子

使用python多处理模块创建的子进程将无法打印

我有下面的代码的问题,以及print在子进程中使用该函数的任何代码.我看不到任何印刷的陈述,即使我用sys.std[err|out].write('worker')而不是print.

这是代码(来自官方python文档):

from multiprocessing import Process

def f(name):
    print 'hello', name

if __name__ == '__main__':
    p = Process(target=f, args=('bob',))
    p.start()
    p.join()
Run Code Online (Sandbox Code Playgroud)

输出为空白.

注意:以下代码使用线程模块并打印输出:

import threading

def f(name):
    print 'hello', name

if __name__ == '__main__':
    p = threading.Thread(target=f, args=('bob',))
    p.start()
    p.join()
Run Code Online (Sandbox Code Playgroud)

输出:hello bob

你能指点我解决方案吗?提前致谢.

python printing multiprocessing

18
推荐指数
3
解决办法
3万
查看次数

标签 统计

multiprocessing ×1

printing ×1

python ×1