Hostitelská aplikace monitoruje zdroje spotřebované AppDomain. Někteří hostitelé využívají tyto informace k určení, zda spotřeba paměti nebo CPU AppDomain překročí příslušnou úroveň, a vynutí AppDomain k odinstalaci.
Monitorování můžete také použít k porovnání spotřeby zdrojů různými algoritmy a určení, který algoritmus spotřebovává méně zdrojů. Protože monitorování AppDomain inherentně způsobuje režijní režii, musí hostitel nastavit statickou vlastnost AppDomain MonitoringEnabled na true, aby se zobrazilo otevřené monitorování.Monitorování nelze po zapnutí vypnout; Pokud se pokusíte nastavit MonitoringEnabled na false, zobrazí se ArgumentException。
Jakmile je monitoring zapnutý, váš kód může dotazovat na následující čtyři vlastnosti pouze pro čtení, které poskytuje třída AppDomain.
- MonitoringSurvivedProcessMemorySize Tato statická vlastnost int64 vrací počet bajtů používaných všemi AppDomainy ovládanými aktuální instancí CLR. Toto číslo je zaručeně přesné až při posledním sběru odpadu.
- Vlastnost MonitoringTotalAllocatedMemorySize této instance Int64 vrací počet bajtů přidělených konkrétnímu AppDomain. Toto číslo je zaručeně přesné až při posledním sběru odpadu.
- Vlastnost MonitoringSurvivedMemorySize této instance Int64 vrací počet bajtů, které jsou aktuálně používány konkrétní AppDomain. Toto číslo je zaručeně přesné až při posledním sběru odpadu.
- MonitoringTotalProcessorTime je vlastnost instance TimeSpan, která vrací využití CPU konkrétní AppDomain.
Následující text ukazuje, jak využít tyto tři vlastnosti ke kontrole změn v AppDomain mezi dvěma časovými body:
Následující ukazuje použití třídy AppDomainMonitorDelta
|