python多進程獲取返回值

https://segmentfault.com/q/1010000010403117/a-1020000010411306

1. multiprocessing.Process

def worker(procnum, return_dict):
    '''worker function'''
    print str(procnum) + ' represent!'
    return_dict[procnum] = procnum

if __name__ == '__main__':
    manager = Manager()
    return_dict = manager.dict()
    jobs = []
    for i in range(5):
        p = multiprocessing.Process(target=worker, args=(i,return_dict))
        jobs.append(p)
        p.start()

    for proc in jobs:
        proc.join()
    # 最後的結果是多個進程返回值的集合
    print return_dict.values()

2. multiprocessing.Pool

p = multiprocessing.Pool(1)
rslt = p.map(test,('i',))
print rslt
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章