Parallel.For循环在完成后不执行代码

时间:2013-08-07 11:29:37

标签: c# for-loop parallel-processing execution

在Parallel.For循环完成后,循环下面的代码将不会被执行。即使我设置了程序未达到的断点,也不会执行return语句。 你有什么想法吗?

谢谢

顺便说一句,c是画布。

以下是代码:

        Parallel.For(0, Playfield.Last().Field.GetLength(0), x => 
        {
            Parallel.For(0, Playfield.Last().Field.GetLength(1), y =>
            {
                if (Playfield.Last().Field[x, y] == 1)
                    {
                        c.Children.Add(createRectangle(lengthX, lengthY, x, y));
                    }
            });
        });

        return c;

1 个答案:

答案 0 :(得分:1)

您可能会在“c.Children.Add”上遇到异常,因为它正在尝试添加控件crossthreaded。这在wpf中是不允许的。