第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Multiprocessing AsyncResult.get() 在 Python 3.7.2

Multiprocessing AsyncResult.get() 在 Python 3.7.2

人到中年有點甜 2021-10-26 18:35:58
我試圖端口一些代碼在Python 3.6到Python 3.7在Windows 10,我打電話時看到的多處理代碼掛.get()在上AsyncResult對象。有問題的代碼要復(fù)雜得多,但我已將其歸結(jié)為類似于以下程序的內(nèi)容。import multiprocessingdef main(num_jobs):    num_processes = max(multiprocessing.cpu_count() - 1, 1)    pool = multiprocessing.Pool(num_processes)    func_args = []    results = []    try:        for num in range(num_jobs):            args = (1, 2, 3)            func_args.append(args)            results.append(pool.apply_async(print, args))        for result, args in zip(results, func_args):            print('waiting on', args)            result.get()    finally:        pool.terminate()        pool.join()if __name__ == '__main__':    main(5)此代碼也在 Python 2.7 中運行。出于某種原因,第一次調(diào)用get()掛起在 3.7 中,但在其他版本上一切正常。
查看完整描述

1 回答

?
米琪卡哇伊

TA貢獻(xiàn)1998條經(jīng)驗 獲得超6個贊

我覺得這是描述在Python 3.7.2回歸這里。它似乎只在 virtualenv 中運行時影響用戶。


目前,您可以通過在 bug thread 上執(zhí)行此評論中描述的操作來解決它。


import _winapi

import multiprocessing.spawn

multiprocessing.spawn.set_executable(_winapi.GetModuleFileName(0))

這將強制子進(jìn)程使用真正的python.exe 而不是 virtualenv 中的那個。因此,如果您使用 PyInstaller 將東西捆綁到一個 exe 中,這可能不合適,但是從 CLI 運行本地 Python 安裝時它可以正常工作。


查看完整回答
反對 回復(fù) 2021-10-26
  • 1 回答
  • 0 關(guān)注
  • 222 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號