小编dev*_*yti的帖子

Python Multiprocessing 迭代脚本

我正在尝试使用 multiprocessing.pool,它似乎工作正常,除了整个脚本一次又一次循环......

我的代码 -

from multiprocessing import Pool

print "at top!"

arr = [30, 30, 30, 30]

def fib(num):
    if num == 0 or num == 1: return 1
    else: return (fib(num - 1) + fib(num - 2))

def main():
    print "start"
    pool = Pool(processes=4)
    result = [pool.apply_async(fib, args=(arr[i],)) for i in range(4)]
    pool.close()
    pool.join()
    for res in result:
        print res.get()
    print "end"


if __name__ == '__main__':
    main()


print "end of program ?"
Run Code Online (Sandbox Code Playgroud)

它返回的是这个——

at top!
start
at top!
end …
Run Code Online (Sandbox Code Playgroud)

python windows multiprocessing python-multiprocessing

5
推荐指数
1
解决办法
591
查看次数