.NET Performans İpuçları

Performans terimi genellikle bir programın yürütme hızını ifade eder. Bazen kaynak kodunuzda belirli temel kuralları izleyerek yürütme hızını artırabilirsiniz. Bazı programlarda kodu yakından incelemek ve mümkün olduğunca hızlı çalıştığından emin olmak için profil oluşturucuları kullanmak önemlidir. Kod yazıldıkçe kabul edilebilir derecede hızlı çalıştığından, diğer programlarda bu iyileştirmeyi yapmanız gerekmez. Bu makalede, performansın olumsuz etkilendiği bazı yaygın alanlar ve iyileştirmeye yönelik ipuçları ve ek performans konularının bağlantıları listeleniyor. Performansı planlama ve ölçme hakkında daha fazla bilgi için bkz. Performans

Kutulama ve Kutudan Çıkarma

Değer türlerini, örneğin gibi System.Collections.ArrayListgenel olmayan koleksiyon sınıflarında, çok sayıda kutulanması gereken durumlarda kullanmaktan kaçınmak en iyisidir. gibi System.Collections.Generic.List<T>genel koleksiyonları kullanarak değer türlerinin kutulanmasından kaçınabilirsiniz. Kutulama ve kutulamayı kaldırma işlem açısından pahalı işlemlerdir. Bir değer türü kutulandığında, tamamen yeni bir nesne oluşturulmalıdır. Bu, basit bir başvuru atamasından 20 kat daha uzun sürebilir. Kutulama kaldırıldığında, atama işlemi dört kat daha uzun sürebilir. Daha fazla bilgi için bkz . Kutulama ve Kutu açma.

Dizeler

Çok sayıda dize değişkenini birleştirirseniz (örneğin sıkı bir döngüde), C# + işleci veya Visual Basic Birleştirme İşleçleri yerine kullanınSystem.Text.StringBuilder. Daha fazla bilgi için bkz. Visual Basic'te birden çok dizeyi birleştirme ve Birleştirme İşleçleri.

Sonlandırıcılar

Boş sonlandırıcılar kullanılmamalıdır. Bir sınıf sonlandırıcı içerdiğinde, Finalize kuyruğunda bir girdi oluşturulur. Sonlandırıcı çağrıldığında, kuyruğu işlemek için çöp toplayıcı çağrılır. Sonlandırıcı boşsa, bu yalnızca performans kaybına neden olur. Daha fazla bilgi için bkz . Sonlandırıcılar ve Nesne Ömrü: Nesneler Nasıl Oluşturulur ve Yok Edilir.

Diğer Kaynaklar

Ayrıca bkz.