Re: [問題] multiprocessing.pool能不用name==main嗎
※ 引述《Pettitte1 (低調奢華有內涵)》之銘言:
: 是這樣的 目前已經會用 multiprocessing.pool 來取得結果
: 範例 code 如下
: https://paste.ee/p/DY72q
: 我可以在 if __name__ == '__main__': 之後取得我要的 data "d"
: 如果我後續想要對 d 進行其他各種運算
: 是否就只能在 if __name__ == '__main__': 縮排內進行各種動作?
: 能夠不用 if __name__ == '__main__':
: 就直接 run m() 這個 function 嗎?
可以考慮 concurrent.futures
應該算python新推的併行處理庫
用意就是取代multiprocessing
封裝成更高階API使用上更便利
改了一下 不用 if __name__ == '__main__' 也能跑
https://paste.ee/p/5vjuQ
不過這是創 thread 不是 process
如果一定要process
那就沒辦法了
另外 ThreadPoolExecutor() 裡面能塞你要創幾個threads
像是 ThreadPoolExecutor(max_workers=50)
就是 python 要求建議 3.7 以上
以上
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.15.47.71 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1669896389.A.44D.html
→
12/01 20:13,
2年前
, 1F
12/01 20:13, 1F
跟 multiprocessing 一樣
threads沒有
但 process 有
不過我實際跑任務也是會平均分配給CPU
不確定GIL影響範圍
※ 編輯: surimodo (39.15.47.71 臺灣), 12/01/2022 20:21:32
推
12/02 21:05,
2年前
, 2F
12/02 21:05, 2F
推
12/02 21:22,
2年前
, 3F
12/02 21:22, 3F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章