Optimierung des Schleifencompilers
Posted: 25 Dec 2024, 21:36
Ich muss große Apps optimieren, die Linq intensiv nutzen. Viele der Linq-Anweisungen erstellen anonyme Objekte innerhalb der Linq-Erweiterungsmethoden. Ein Beispiel :-
Das Problem ist, dass für jede Iteration eine neue Liste erstellt wird.
Gibt es ein Compiler-Flag, das ich verwenden kann? eingestellt, um den Compiler dazu zu bringen, eine statische Analyse durchzuführen und den schleifeninvarianten Code so zu extrahieren, dass er außerhalb der Schleife liegt?
Code: Select all
// custom sort order
var sortedData = data.OrderBy(x => (new List() {"Orange", "Apple", "Pear" }).IndexOf(x.Name));
foreach (var d in sortedData) {
....
Gibt es ein Compiler-Flag, das ich verwenden kann? eingestellt, um den Compiler dazu zu bringen, eine statische Analyse durchzuführen und den schleifeninvarianten Code so zu extrahieren, dass er außerhalb der Schleife liegt?