我遇到了openMP,它可以用來並行化c,C++中的for循環。當然,OpenMP可以做的遠不止這些。但我很好奇,如果我們可以並行化java中的for循環來優化程序的性能。假設我在for循環中有n次迭代,有沒有辦法平行運行這些迭代?在java中並行化for循環
1
A
回答
4
如果每次迭代都需要很多時間並且獨立於以前的循環計算,那麼使用ExecutorService並將計算作爲任務提交。
ExecutorService executorService = Executors.newFixedThreadPool(4); // number of threads
for (int i = 0; i < n; i++) {
// declare variables as final which will be used in method run below
final int count = i;
executorService.submit(new Runnable() {
@Override
public void run() {
//do your long stuff and can use count variable
}
});
}
相關問題
- 1. 在Java中for循環的並行化
- 2. 並行化for循環
- 3. 在python中並行化for循環
- 4. 在java中運行JTabbedPanel for for循環
- 5. 並行For循環
- 6. 並行For循環
- 7. 並行化for循環蟒蛇
- 8. 非for循環的OpenMP並行化
- 9. 並行化嵌套Python for循環
- 10. 格式化Java for循環
- 11. Java for循環優化
- 12. 使用FOR循環,並在Java中
- 13. 巢做for循環並行內部的並行for循環
- 14. 併發java on for循環
- 15. 在C++/cli中並行for循環
- 16. 如何在scala中並行化spark中的for循環?
- 17. For循環未在Java中
- 18. OpenMP,並行for循環,bigIntegers
- 19. 並行for循環,Python
- 20. 並行for循環R
- 21. 如何並行for循環
- 22. 並行for循環matlab
- 23. 並行python for循環
- 24. 如何在R中並行化一個double for循環?
- 25. 在CUDA中並行化一個for循環(1D Naive Convolution)
- 26. for循環(Java)
- 27. 如何在Java中的for循環中打印for循環
- 28. gnu並行並行for循環
- 29. 想要在Java中使用多線程並行化嵌套for循環
- 30. 在Java中使用Var for For循環
使用線程應該有所幫助嗎? –
@JunedAhsan:儘管如此,理想情況下,還是有更高級別的解決方案。 – Thilo
如果每次迭代花費大量時間並且獨立於循環中以前的計算,則使用ThreadPoolExecutor並將計算結果作爲任務提交。 – Tala