Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Begriff "Leistung " bezieht sich im Allgemeinen auf die Ausführungsgeschwindigkeit eines Programms. Sie können manchmal die Ausführungsgeschwindigkeit erhöhen, indem Sie bestimmte Grundlegende Regeln in Ihrem Quellcode folgen. In einigen Programmen ist es wichtig, Code genau zu untersuchen und Profiler zu verwenden, um sicherzustellen, dass er so schnell wie möglich ausgeführt wird. In anderen Programmen müssen Sie diese Optimierung nicht ausführen, da der Code bereits in der geschriebenen Form akzeptabel schnell läuft. In diesem Artikel werden einige allgemeine Bereiche aufgeführt, in denen die Leistung beeinträchtigt werden kann, und Tipps zur Verbesserung sowie Links zu zusätzlichen Leistungsthemen. Weitere Informationen zur Planung und Messung der Leistung finden Sie unter Performance
Boxing und Unboxing
Am besten verwenden Sie keine Werttypen in Situationen, in denen sie öfter geschachtelt werden müssen, z. B. in nicht generischen Auflistungsklassen wie System.Collections.ArrayList. Sie können das Boxen von Werttypen vermeiden, indem Sie generische Auflistungen wie z. B. System.Collections.Generic.List<T> verwenden. Boxing und Unboxing sind rechenintensive Prozesse. Wenn ein Werttyp eingeboxt wird, muss ein vollständig neues Objekt erzeugt werden. Dies kann bis zu 20 Mal länger dauern als eine einfache Referenzzuweisung. Eine Umwandlung durch Unboxing kann vier Mal mehr Zeit beanspruchen als eine Zuweisung. Weitere Informationen finden Sie unter Boxing und Unboxing.
Streichinstrumente
Wenn Sie eine große Anzahl von Zeichenfolgenvariablen verketten, z. B. in einer engen Schleife, verwenden Sie System.Text.StringBuilder anstelle des C# +-Operators oder der Visual Basic-Verkettungsoperatoren. Weitere Informationen finden Sie unter Verketten mehrerer Zeichenfolgen und Verkettungsoperatoren in Visual Basic.
Finalizer
Leere Finalizer sollten nicht verwendet werden. Wenn eine Klasse einen Finalizer enthält, wird ein Eintrag in der Finalize-Warteschlange erstellt. Wenn der Finalizer aufgerufen wird, wird der Garbage Collector aufgerufen, um die Warteschlange zu verarbeiten. Wenn der Finalizer leer ist, führt dies einfach zu einem Leistungsverlust. Weitere Informationen finden Sie unter Finalizer undObjektlebensdauer: Erstellen und Zerstören von Objekten.