首页 > 解决方案 > 如何保存在 python 中使用两个单独的处理器运行的两个函数的输出?

问题描述

我有两个运行起来很耗时的功能。我想在 python 中使用多处理库运行每个。我看到了一些示例,但我不知道处理器完成计算后,如何检索每个示例的输出并总结总结果?每个函数都返回一个值。

For example:

from multiprocessing import Pool
import time

def f1(n):
    time.sleep(0.5)
    global f1out
    f1out = n**2
    return n**2

def f2(n):
    time.sleep(0.5)
    global f2out
    f2out = n**2
    return n**3


start = time.time()

if __name__ == "__main__":

    results1 = Process(target=f1,args=(range(10)))
    results2 = Process(target=f2,args=(range(10)))
    results1.start()
    results2.start()

    results1.join()
    results2.join()


    print(results1)
    print(results2)



end = time.time()
TT = end-start
print(TT)

我想计算 (results1 + results2) 但 results1 和 2 不是值!

标签: multiprocessingpython-multiprocessing

解决方案


推荐阅读