2024-05-19 01:45:33 发布
网友
我有一些使用多处理池类并行运行的代码。不幸的是,我从另一个库中使用的一些函数有一些冗长的输出。要抽象问题,请看以下示例:
from multiprocessing import Pool def f(x): print 'hello' return x*x p = Pool(10) p.map(f, [1,2,3])
所以这将打印10次“你好”。 是否有可能使进程的输出静音或 把标准输出在某个变量中?谢谢你的建议。在
编辑: 我不想重定向整个stdout,只是为了我的池的进程。在
使用the ^{} parameter调用工作进程中的mute:
mute
import sys import os from multiprocessing import Pool def mute(): sys.stdout = open(os.devnull, 'w') def f(x): print 'hello' return x*x if __name__ == '__main__': p = Pool(10, initializer=mute) p.map(f, [1,2,3]) print('Hello')
印刷品
使用the ^{} parameter 调用工作进程中的
mute
:印刷品
^{pr2}$相关问题 更多 >
编程相关推荐