Эрг, я пытаюсь найти эти два метода в BCL с помощью Reflector, но не могу их найти. В чем разница между этими двумя фрагментами?
A:
IEnumerable<string> items = ...
Parallel.ForEach(items, item => {
...
});
B:
IEnumerable<string> items = ...
foreach (var item in items.AsParallel())
{
...
}
Есть ли разные последствия использования одного по сравнению с другим? (Предположим, что все, что я делаю в заключенных в скобки текстах обоих примеров, является потокобезопасным.)