线程并行进行交换

时间:2016-01-07 07:35:04

标签: c# multithreading parallel.for

我需要将我的程序与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();
}

1 个答案:

答案 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();
});