2
我想在Python 2.7中使用模塊線程實現ThreadPool + Scheduler。我的池包含最先分配的線程,而我的調度程序處理哪個線程應該執行任務。我有一些執行系統進程的線程,並等待它的結果。這些系統調用可能需要很長時間,我希望能夠在任務執行時重用該線程。Python線程調度
例子:
- 線程池有8個線程
- 8任務進來一起
- 第九任務延遲小
- 任務1需要1024年後進來(也許它可以使用一些優化)。
- 任務2-8需要1年。
- 任務9進來,只需要1秒鐘。
- 由於正在使用所有線程,因此無法執行任務9。
任務1具有類似於此
build_process = subprocess.Popen(build_command, shell=False)
build_process.wait()
代碼反正是有任務1從搶線程,同時它的等待,做任務9?然後,當任務9完成回到任務1(等待該過程完成?)Python是否已經實現了這樣的事情?
謝謝。在新版本的Python中,這不是事件可能嗎? – Taztingo
@Taztingo:不幸的不是。一旦一個線程被啓動,操作該線程的唯一支持方式就是來自線程本身,在這種情況下,你可能只需要第十個線程。 –