我寫了使用池,處理一些文件的Python程序啓動並行處理(16)。在運行開始時,進程數保持爲16,直到幾乎所有文件都得到處理。然後,出於某些我不明白的原因,當只剩下幾個文件時,一次只運行一個進程,這會使處理時間比所需時間長得多。你能幫忙嗎?Python的作業多池號不正確
0
A
回答
0
Python在開始執行您在Pool的applyasync/asyncmap中指定的過程之前,爲每個工作人員分配一項工作。
例如,讓我們說,你有8個文件要處理,你開始有4名工人池。
在開始文件處理之前,將爲每個工作人員分配兩個特定文件。這意味着,如果一些工作人員比其他人早結束其工作,只會「休息一下」,並不會開始幫助其他人。
0
力map()
使用CHUNKSIZE 1,而不是由自己猜測的最佳價值,ES:
pool = Pool(16)
pool.map(func, iterable, 1)
這應該(理論上),保證負載的工人之間的最佳分配,直到的結束輸入數據。
見here
相關問題
- 1. Python多處理池未啓動作業
- 2. 不正確的上游快照作業
- 3. 多作業池式打印機控制
- 4. 多處理池作業輸出
- 5. Python多處理池不能正常工作
- 6. 沒有分塊Python的多處理池正確
- 7. 在Python中的多處理池中動態重新排序作業
- 8. 不正確的作業配置插件使用工作DSL
- 9. 俄羅斯符號工作不正確
- 10. 多處理Python池
- 11. jQuery的不乘號正確
- 12. 多處理python是否有可能向池發送一個作業順序
- 13. KeyboardInterrupts用python的多池IMAP
- 14. 應該寫正確的括號在Python
- 15. 線程池中的排隊作業vb.net
- 16. 後臺作業的導軌池
- 17. 的Python:多處理未完成作業
- 18. Python作業不終止
- 19. Sqlite更新不工作正確 - python
- 20. Python - if語句工作不正確
- 21. 這個作業是否正確?
- 22. 確定作業是否正在運行
- 23. 用引號符號_popen工作正確
- 24. Python urlparse,正確或不正確?
- 25. Python功能正確/不正確?
- 26. Python:不正確的填充
- 27. 不正確的變量python
- 28. 如何以正確的方式在Java EE 6中實現具有貪婪工作池的作業隊列?
- 29. HANGMAN作業python
- 30. GPA Python作業
無需任何代碼,並沒有關於您的調度策略的任何信息,它會很困難來幫助你。看看http://stackoverflow.com/help/mcve。 – hagello
可能每個進程在啓動時都有專門的負載。他完成後停止。 –
嗨,代碼以非常直接的方式進行:pool multiprocessing.Pool(processes = 16),然後pool.map(...)用於將函數映射到參數列表。 – james0011