c# - Parallel.ForEach错误

标签 c# multithreading task-parallel-library

我有一个线程数组,我想同时/并行运行,但得到“NullReferenceException

var t = new Thread[6];
t[0] = new Thread(() => DoSomething0());
t[1] = new Thread(() => DoSomething1());
t[2] = new Thread(() => DoSomething2());
t[3] = new Thread(() => DoSomething3());
t[4] = new Thread(() => DoSomething4());
t[5] = new Thread(() => DoSomething5());
Parallel.ForEach(t, item => item.Start());

由于项目是Parrallel.Foreach,它在null处给出错误,但是我在做什么错呢?

最佳答案

您为六个项目创建一个数组,但是您只为前五个项目分配了值。最后一项为空,因此当您尝试使用数组中的所有项时,您将得到一个空引用错误。

关于c# - Parallel.ForEach错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14568096/

相关文章:

c# - “使用”语句与 'try finally'

c# - TryExecuteTask(task) 总是阻塞吗?

c# - 在 C# 中格式化 double 值

c# - 在运行时将对象转换为泛型类型

java - 一个线程比另一个慢,即使他们做同样的事情

c# - 任务似乎自动开始

c# - 是否可以在执行 Parallel.ForEach 期间更改 parallelOptions.MaxDegreeOfParallelism?

C# Timespan 毫秒与 TotalMilliseconds

c# - 如何将字典从 Javascript 传递到 C# 运行时组件?

c# Win Form - CLR 无法从 COM 上下文转换