我的代码做了非常简单的事情
列表已经有元素。我在列表中有大约 25000 个元素(我希望有更多),每个元素都很小(DateTime)。
List<DateTime> newList = new List<DateTime>();
Parallel.ForEach(list, l => newlist.Add(new DateTime(l.Ticks + 5000)));
即,基于每个元素,我正在创建新元素并将它们添加到不同的列表中。但是,这似乎不是一个好的编程方法。我有时会遇到此异常,但不是每次都遇到这种情况。
IndexOutOfRangeException : {"Index was outside the bounds of the array."}
我们可以使用 Parallel.ForEach() 将元素添加到列表中吗?如果是,为什么我会遇到错误?如果不是,为什么?