Isäntäsovellus seuraa AppDomainin käyttämiä resursseja. Jotkut isännät käyttävät tätä tietoa määrittääkseen, ylittääkö AppDomainin muistin tai suorittimen kulutus asianmukaisen tason, ja pakottavatko AppDomainin poistamaan sen.
Voit myös käyttää seurantaa vertaillaksesi eri algoritmien resurssien kulutusta ja selvittääksesi, mikä algoritmi käyttää vähemmän resursseja. Koska AppDomainin valvonta aiheuttaa itsessään ylikuormaa, isännän on asetettava AppDomainin staattinen ominaisuus MonitoringEnabled true -tilaksi näyttääkseen avoimen valvonnan.Valvontaa ei voi kytkeä pois päältä sen jälkeen; Jos yrität asettaa MonitoringEnabled-asetuksen vääräksi, ArgumentException heitetään。
Kun valvonta on päällä, koodisi voi hakea seuraavia neljää vain lukua -ominaisuutta, jotka AppDomain-luokka tarjoaa.
- MonitoringSurvivedProcessMemorySize Tämä Int64-staattinen ominaisuus palauttaa kaikkien nykyisen CLR-instanssin hallitsemien AppDomainien käyttämien tavujen määrän. Tämä luku on taattu, että se on tarkka vain viimeisimmän roskien keräyksen yhteydessä.
- Tämän Int64-instanssin MonitoringTotalAllocatedMemorySize -ominaisuus palauttaa tietylle AppDomainille varattujen tavujen määrän. Tämä luku on taattu, että se on tarkka vain viimeisimmän roskien keräyksen yhteydessä.
- Tämän Int64-instanssin MonitoringSurvivedMemorySize -ominaisuus palauttaa tietyn AppDomainin tällä hetkellä käyttämien tavujen määrän. Tämä luku on taattu, että se on tarkka vain viimeisimmän roskien keräyksen yhteydessä.
- MonitoringTotalProcessorTime on TimeSpan-instanssiominaisuus, joka palauttaa tietyn AppDomainin suorittimen käytön.
Seuraavassa havainnollistetaan, miten näitä kolmea ominaisuutta voidaan käyttää AppDomainin muutosten tarkistamiseen kahden aikapisteen välillä:
Seuraavassa havainnollistetaan, miten AppDomainMonitorDelta-luokkaa käytetään
|