Я запускаю несколько параллельных задач, например так:
var tasks =
Enumerable.Range(1, 500)
.Select(i => Task.Factory.StartNew<int>(ProduceSomeMagicIntValue))
.ToArray();
и затем присоединяю их с помощью
Task.WaitAll(tasks);
В этой последней строке я получаю синий волнистый маркер под задач
, с предупреждающим сообщением:
Ковариантное преобразование массива из Task[] в Task[]
может вызвать исключение времени выполнения при операции записи.
Я понимаю, почему я получаю это сообщение, но есть ли способ обойти это? (например, как общая версия Task.WaitAll()
?)