Deaktivierbare Compiler-Optimierung für eine bestimmte Funktion oder einen bestimmten Codeblock (C #)
Der Compiler optimiert hervorragend für RELEASE-Builds, aber gelegentlich kann es hilfreich sein, sicherzustellen, dass die Optimierung für eine lokale Funktion deaktiviert ist (aber nicht für das gesamte Projekt, indem Sie @ deaktiviereProject Options > Optimize code
).
In C ++ wird dies folgendermaßen erreicht (mit dem#pragma
normalerweise auskommentiert):
#pragma optimize( "", off )
// Some code such as a function (but not the whole project)
#pragma optimize( "", on )
Gibt es ein Äquivalent in C #?
AKTUALISIEREMehrere ausgezeichnete Antworten schlagen vor, die Methode mit @ zu dekoriereMethodImplOptions.NoOptimization
. Dies wurde in .NET 3.5 implementiert, jedoch nicht in der CF-Version (Compact Framework). Eine verwandte Folgefrage ist, ob ein Äquivalent für:
* projects targeting .NET 3.0 or earlier?
* projects deployed to a device such as Windows CE 6.0 using the .NET 3.5 CF?