memberInfoCacheCreation MDA
Not
Bu makale .NET Framework'e özgüdür. .NET 6 ve sonraki sürümleri de dahil olmak üzere daha yeni .NET uygulamaları için geçerli değildir.
Yönetilen memberInfoCacheCreation
hata ayıklama yardımcısı (MDA), önbellek MemberInfo oluşturulduğunda etkinleştirilir. Bu, kaynak açısından pahalı yansıma özelliklerinden yararlanan bir programın güçlü bir göstergesidir.
Belirtiler
Program kaynak pahalı yansıma kullandığından bir programın çalışma kümesi artar.
Neden
Nesneleri içeren MemberInfo yansıma işlemleri, soğuk sayfalarda depolanan meta verileri okumaları gerektiğinden ve genel olarak programın bir tür geç bağlı senaryo kullandığını belirttiğinden pahalı olarak kabul edilir.
Çözüm
Bu MDA'yi etkinleştirip kodunuzu bir hata ayıklayıcıda çalıştırarak veya MDA etkinleştirildiğinde hata ayıklayıcıyla ekleyerek programınızda yansımanın nerede kullanıldığını belirleyebilirsiniz. Bir hata ayıklayıcısı altında önbelleğin nerede oluşturulduğunu MemberInfo gösteren bir yığın izlemesi alırsınız ve buradan programınızın yansımayı nerede kullandığını belirleyebilirsiniz.
Çözüm, kodun hedeflerine bağlıdır. Bu MDA, programınızın geç bağlı bir senaryoya sahip olduğu konusunda sizi uyarır. Erken bağlanan bir senaryoyu değiştirip değiştirebileceğinizi veya geç bağlı senaryonun performansını göz önünde bulundurabileceğinizi belirlemek isteyebilirsiniz.
Çalışma Zamanı üzerindeki etkisi
Bu MDA, oluşturulan her MemberInfo önbellek için etkinleştirilir. Performans etkisi göz ardı edilebilir.
Çıktı
MDA, önbelleğin oluşturulduğunu MemberInfo belirten bir ileti oluşturur. Programınızın yansımayı nerede kullandığını gösteren bir yığın izlemesi almak için hata ayıklayıcı kullanın.
Yapılandırma
<mdaConfig>
<assistants>
<memberInfoCacheCreation/>
</assistants>
</mdaConfig>
Örnek
Bu örnek kod MDA'yi memberInfoCacheCreation
etkinleştirir.
using System;
public class Exe
{
public static void Main()
{
typeof(object).GetMethods();
}
}