我使用multiprocessing.Pool()
來並行化一些大熊貓處理,但發現它有點太成功。我的CPU使用率達到100%,整個計算機變得無法響應。即使鼠標變得難以使用。降低多處理的進程優先級。在Windows上的池
我可以用這段代碼改變我的進程的進程優先級。
import psutil
p = psutil.Process(os.getpid())
p.nice = psutil.BELOW_NORMAL_PRIORITY_CLASS
然而,當我看到在Windows任務管理器中我發現,只有主python.exe過程已被更改至低於正常優先級。
有沒有減少池進程優先級的好方法?
你有沒有嘗試把你顯示的工作人員功能內的片段? –
你爲什麼不生成更少的進程? – acushner
@acushner我已經暫時砍掉它,使用7個「固定」它的池大小。但我想知道是否有更好的解決方案。 – JasonEdinburgh