Nachdem ich auf DotNet 4.5 aktualisiert hatte, begann eine Abfrage mit OutOfMemoryExceptions.Warum sollte OutOfMemoryException ausgelöst werden, während PLINQ Take() verwendet wird?
Die (destilliert) Abfrage ist:
var tests = new int[]{}
.AsParallel()
.GroupBy(_ => _)
.Take(int.MaxValue)
.ToArray();
ich dies mit dem gleichen Problem für jedermann veröffentlichen. Ich antworte unten.
Laufen Sie in 32-Bit oder 64-Bit? – Oded
32-Bit-Prozess. –
Ich habe diese Art von Code innerhalb einer Funktion verwendet, die einen Parameter mit der Anzahl der Elemente erhalten hat, die zurückgegeben werden sollen. Die Weitergabe von int.MaxValue (es gab eine Überlastung, die genau das tat) bedeutete im Wesentlichen "nimm alles". –