У меня есть метод расширения для IEnumerable, который затем перебирает коллекцию, выполняет свою работу, а затем возвращает новый IEnumerable.
Я пытался использовать PLINQ, используя .AsParallel (). ForAll (), который значительно ускоряет итерации (что, конечно, должно быть), однако, когда коллекция возвращается, в этой коллекции часто есть несколько объектов, которые нуль.
Я предполагаю, что это может быть потому, что он возвращает коллекцию до того, как у всех "бизнесов" есть шанс завершить? если я отлаживаю и ставлю точку останова, нулей нет.
Есть ли какой-нибудь метод "ожидания завершения этой операции", который я должен использовать?
РЕДАКТИРОВАТЬ: , чтобы быть немного яснее, в конечном итоге есть бизнес-логика, изменение свойств и т. Д. Необходимо иметь зацикленное действие, а не просто выбрать что-то.