Resursdatora lietojumprogramma pārrauga AppDomain patērētos resursus. Daži resursdatori izmanto šo informāciju, lai noteiktu, vai AppDomain atmiņas vai CPU patēriņš pārsniedz atbilstošo līmeni, un piespiest AppDomain atinstalēt.
Varat arī izmantot pārraudzību, lai salīdzinātu dažādu algoritmu resursu patēriņu un noteiktu, kurš algoritms izmanto mazāk resursu. Tā kā AppDomain uzraudzība pēc būtības rada pieskaitāmās izmaksas, resursdatoram ir jāiestata AppDomain statiskais rekvizīts MonitoringEnabled uz true, lai parādītu atvērtu uzraudzību.Uzraudzību nevar izslēgt pēc ieslēgšanas; Ja mēģināt iestatīt opciju MonitoringEnabled uz false, tiek izmests ArgumentException。
Kad pārraudzība ir ieslēgta, kods var vaicāt tālāk norādītos četrus tikai lasāmos rekvizītus, ko nodrošina klase AppDomain.
- MonitoringSurvivedProcessMemorySize Šis Int64 statiskais rekvizīts atgriež baitu skaitu, ko izmanto visi AppDomains, kurus kontrolē pašreizējā CLR instance. Šis numurs ir precīzs tikai tad, kad tika veikta pēdējā atkritumu savākšana.
- Šīs Int64 instances rekvizīts MonitoringTotalAllocatedMemorySize atgriež konkrētam AppDomain piešķirto baitu skaitu. Šis numurs ir precīzs tikai tad, kad tika veikta pēdējā atkritumu savākšana.
- Šīs Int64 instances rekvizīts MonitoringSurvivedMemorySize atgriež baitu skaitu, ko pašlaik izmanto konkrēts AppDomain. Šis numurs ir precīzs tikai tad, kad tika veikta pēdējā atkritumu savākšana.
- MonitoringTotalProcessorTime ir TimeSpan instances rekvizīts, kas atgriež konkrēta AppDomain CPU lietojumu.
Tālāk ir parādīts, kā izmantot šos trīs rekvizītus, lai pārbaudītu, vai AppDomain nav izmaiņu starp diviem laika punktiem:
Tālāk ir parādīts, kā izmantot klasi AppDomainMonitorDelta
|