我有一计算密集型程序段:for(int i=1; i<=100; i++){DoCalc(i);}AAA;BBB;......i从1至100要计算完需要很长时间,然后才能执行后面的AAA,BBB语句。可否采用多线程方式加快计算速度,代码应该怎样写?DoCalc(i),计算和顺序无关,只要100个计算都分别处理完即可,而且,不涉及读写共同资源的问题。
3 回答
九州编程
TA贡献1785条经验 获得超4个赞
Thread [] tList = new Thread [100] ;
for(int i=1; i<=100; i++)
{
// 这里改成多线程。
tList [i] = new Thread (new new ParameterizedThreadStart(DoCalc));
tList [i].Start (i) ;
}
// 等待每一个线程结束。
for (int i = 1 ; i <= 100 ; i ++)
{
tList [i].Join () ;
}
AAA;
BBB;
......
- 3 回答
- 0 关注
- 1186 浏览
添加回答
举报
0/150
提交
取消