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