同步執行多個任務
回答
聽起來你正在尋找Barrier
使多任務協同一種算法並行經過多個階段的工作。
,並
任務組通過一系列階段,其中每一個在其在給定的階段已經到達
Barrier
和隱含信號組等待所有其他人移動合作到達。同樣的Barrier
可以用於多個階段。
(該在Barrier
頁面上的示例顯示四項任務運行相同的代碼 - 但是這絕不是一個要求)
如果你有各種不同的任務需要等待,那麼Task.WaitAll
。
如果很多相同任務的實例,然後parallel.foreach
是一個容易等待運行它們。
我可以使用Task.WaitAll從任務中等待所有其他人呢? – Revious
Task.WaitAll和Barrier有不同的用法:Task.WaitAll將來自任務外部,保證它們已經完成,然後再進入主線程中的下一步。障礙給出了任務內部到達的「里程碑」,然後等待其他任務在繼續前進到同一點。這並不意味着任務完成,只是它達到了重要的一點。 –
WaitAll()確實不允許「...他們可以繼續執行」 –
- 1. 同步grunt.js任務執行
- 2. 多個異步任務執行
- 3. 多個異步任務執行
- 4. 執行相同任務的多個JButton
- 5. 在gulp中同步執行任務
- 6. MVC3 AsyncController - 執行同步I/O任務
- 7. Apache cron:執行同步任務
- 8. 如何多次執行異步任務?
- 9. 任務繼續執行多個任務
- 10. Bookmarklet執行多個任務
- 11. ANR執行異步任務
- 12. 異步任務不執行
- 13. 串行執行其他異步任務後執行異步任務
- 14. 多線程執行不同任務
- 15. Tomcat執行服務同步
- 16. 在同步調用中執行異步任務
- 17. 無法在android中執行多個異步任務
- 18. 執行多個CMD任務並異步更新
- 19. 多個異步任務執行不正確
- 20. 多線程同步執行
- 21. 與NSOperationQueue同步執行多個NSOpeartion
- 22. 運行多個C#任務異步
- 23. 同步任務
- 24. 任務同步
- 25. Spring MVC異步任務同步運行
- 26. 切換異步任務同步任務
- 27. 處理程序中的異步任務?在行中執行多個異步任務
- 28. ffmpeg在一個進程中同時執行多個任務ID
- 29. 同時執行2個任務列表
- 30. 如何運行gulp.watch多個任務同步?
Task.WaitAll和Barrier之間的區別是什麼? – Revious
有了障礙,任務還沒有完成 - 在障礙通過後,他們仍然(每個)都有自己的工作繼續進行。使用'WaitAll',所有這些任務都已完成 - 如果還有更多工作要做(對於多任務),您需要創建一組新任務來完成這項工作。 –