Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Termen prestanda refererar vanligtvis till körningshastigheten för ett program. Du kan ibland öka exekveringshastigheten genom att följa vissa grundläggande regler i din källkod. I vissa program är det viktigt att undersöka koden noggrant och använda profilerare för att se till att den körs så snabbt som möjligt. I andra program behöver du inte utföra en sådan optimering eftersom koden körs acceptabelt snabbt när den skrivs. Den här artikeln innehåller några vanliga områden där prestanda kan drabbas och tips för att förbättra den samt länkar till ytterligare prestandaämnen. Mer information om att planera och mäta prestanda finns i Prestanda
Boxning och avboxning
Undvik att använda värdetyper i situationer där de behöver boxas ofta, till exempel i icke-generiska samlingsklasser som System.Collections.ArrayList. Du kan undvika boxning av värdetyper med hjälp av generiska samlingar som System.Collections.Generic.List<T>. Boxning och unboxing är beräkningsmässigt dyra processer. När en värdetyp boxas måste ett helt nytt objekt skapas. Det kan ta upp till 20 gånger längre tid än en enkel referenstilldelning. När du packar upp kan gjutningsprocessen ta fyra gånger så lång tid som en uppgift. Mer information finns i Boxning och Avboxning.
Strängar
När du sammanfogar ett stort antal strängvariabler, till exempel i en snäv loop, använder du System.Text.StringBuilder i stället för C# + operatorn eller Visual Basic Concatenation Operators. Mer information finns i Sammanfoga flera strängar och sammanlänkningsoperatorer i Visual Basic.
Finalisatorer
Tomma finalizers ska inte användas. När en klass innehåller en finalisator skapas en post i finaliseringskön. När slutföraren anropas anropas skräpinsamlaren för att bearbeta kön. Om finalizern är tom resulterar detta helt enkelt i att prestandan går förlorad. Mer information finns i Finalizers och Object Lifetime: Hur objekt skapas och förstörs.