作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
<分区>
所以我有一个程序运行一堆不同的计算,然后在所有计算完成后返回一个结果。
最初我的代码是同步的,如下所示:
public class MyApplication{
public static void main(String[] args) {
doCalculation(1);
doCalculation(2);
doCalculation(3);
doCalculation(4);
doCalculation(5);
doCalculation(6);
doCalculation(7);
doCalculation(8);
/* Print result */
}
}
我认为在新线程中运行这些计算会更有效率,所以现在我有类似的东西,
public class MyApplication{
public static void main(String[] args) {
List<Thread> threads = new ArrayList<Thread>();
threads.add(doCalculation(1));
threads.add(doCalculation(2));
threads.add(doCalculation(3));
threads.add(doCalculation(4));
threads.add(doCalculation(5));
threads.add(doCalculation(6));
threads.add(doCalculation(7));
threads.add(doCalculation(8));
for(Thread t : threads){
if(t.isAlive()){
try{
t.join();
} catch(InterruptedException e) {
System.out.println("Error calculating fitness");
}
}
}
/* Print result */
}
}
对不起,我是线程的初学者。如果我不得不猜测,我会假设我产生了两个许多新线程(我的应用程序中有大约 50 个计算),但任何建议都将不胜感激!
我是一名优秀的程序员,十分优秀!