我需要将我的程序与Threads交换为并行for循环,但我不知道该怎么做。
这是我的代码与线程:
for (int i = 0; i < 4; ++i)
{
obj[i] = new Object((i + 1) * sizeForOneThread, 400, i *
sizeForOneThread, 0, scaled, 400);
thread[i] = new Thread(new ThreadStart(obj[i].generateFractal));
thread[i].Start();
}
for (int i = 0; i < 4; ++i)
{
thread[i].Join();
}
答案 0 :(得分:1)
Parallel.For可能是一个好的开始。
Parallel.For(0, 4, i =>
{
obj[i] = new Object((i + 1) * sizeForOneThread, 400, i * sizeForOneThread, 0, scaled, 400);
obj[i].generateFractal();
});