Megosztás a következőn keresztül:


memberInfoCacheCreation MDA

Feljegyzés

Ez a cikk a .NET-keretrendszer vonatkozik. Ez nem vonatkozik a .NET újabb implementációira, beleértve a .NET 6-os és újabb verzióit.

A memberInfoCacheCreation felügyelt hibakeresési segéd (MDA) a gyorsítótár létrehozásakor MemberInfo aktiválódik. Ez egy olyan program erős jelzése, amely erőforrás-költséges tükröződési funkciókat használ.

Hibajelenségek

A program munkakészlete azért nő, mert a program erőforrás-költséges tükrözést használ.

Ok

Az objektumokat tartalmazó MemberInfo tükrözési műveletek erőforrás-költségnek minősülnek, mivel a hideg lapokon tárolt metaadatokat kell olvasniuk, és általában azt jelzik, hogy a program valamilyen késői kötött forgatókönyvet használ.

Resolution (Osztás)

Az MDA engedélyezésével, majd a kód hibakeresőben való futtatásával vagy az MDA aktiválásakor egy hibakeresővel való csatolással meghatározhatja, hogy hol használják a tükröződést a programban. A hibakereső alatt megjelenik egy verem nyomkövetése, amely megmutatja, hogy hol lett létrehozva a MemberInfo gyorsítótár, és innen meghatározhatja, hogy a program hol használja a tükröződést.

Az állásfoglalás a kód célkitűzéseitől függ. Ez az MDA figyelmezteti, hogy a program késői forgatókönyvvel rendelkezik. Érdemes lehet meghatározni, hogy helyettesíthet-e egy korai kötésű forgatókönyvet, vagy figyelembe szeretné venni a késői kötött forgatókönyv teljesítményét.

Effektus a futtatókörnyezetre

Ez az MDA minden létrehozott gyorsítótárhoz MemberInfo aktiválva van. A teljesítményre gyakorolt hatás elhanyagolható.

Hozam

Az MDA a gyorsítótár létrehozását jelző MemberInfo üzenetet ad ki. Használjon hibakeresőt egy verem nyomkövetéséhez, amely megmutatja, hogy a program hol használja a tükröződést.

Konfiguráció

<mdaConfig>
  <assistants>
    <memberInfoCacheCreation/>
  </assistants>
</mdaConfig>

Példa

Ez a mintakód aktiválja az memberInfoCacheCreation MDA-t.

using System;

public class Exe
{
    public static void Main()
    {
        typeof(object).GetMethods();
    }
}

Lásd még