我开始了一些并行任务,如下所示:
var tasks =
Enumerable.Range(1, 500)
.Select(i => Task.Factory.StartNew<int>(ProduceSomeMagicIntValue))
.ToArray();
然后加入他们
Task.WaitAll(tasks);
在最后一行中,我在 下得到一个蓝色波浪标记tasks
,并带有警告消息:
从 Task[] 到 Task[] 的协变数组转换 可能导致写操作的运行时异常。
我明白为什么我会收到此消息,但有没有办法解决这个问题?(例如,像Task.WaitAll()
? 的通用版本)