2017-03-02 36 views
0

我試圖生成滿足特定要求的一組隨機值。用Python多處理返回第一個結果

我想並行嘗試並加快速度。也就是說,像這樣:

pool = multiprocessing.Pool(8) 
pool.map(gen_random_set, [set_size]*8) 

但是,我不需要多組,只有一組。如何在找到第一組後終止池(假定使用pool.terminate())?

回答

0

這裏是終端的一個例子:

import multiprocessing 
from multiprocessing import Pool 
    def worker(i): 
    time.sleep(3) 
    print(i) 

    mypool = Pool() 
    a = mypool.map_async(worker,range(1000)) 

當你運行它,你的游泳池將停止執行:

multiprocessing.pool.Pool.terminate(mypool) 

名稱「myPool的」應該是一樣的,你所創建的池對象由mypool = Pool()