property CacheGovernorStatistics: TPdfCacheGovernorStatistics; // read only
type TPdfCacheGovernorStatistics = record
MaxBytes: Int64;
StoredBytes: Int64;
PeakStoredBytes: Int64;
PinnedBytes: Int64;
EntryCount: Integer;
ReservationCount: Int64;
TouchCount: Int64;
EvictionCount: Int64;
RejectionCount: Int64;
end;
| MaxBytes | Konfigureret loft, svarende til CacheBudgetBytes |
| StoredBytes | Summen af de målte bytes for alle aktuelt gemte poster |
| PeakStoredBytes | Højeste vandmærke for StoredBytes, siden instansen blev oprettet |
| PinnedBytes | Andelen af lagrede bytes, der holdes af pinnede poster, aktuelt aktive parsede pagescener |
| EntryCount | Antallet af gemte poster på tværs af alle deltagende caches |
| ReservationCount | Kumulativt antal accepterede cache-indsættelser |
| TouchCount | Kumulativt antal LRU-opfriskninger, én pr. cache-hit på en gemt post |
| EvictionCount | Kumulativt antal poster, der er smidt ud for at holde brugen inden for budgettet |
| RejectionCount | Kumulativt antal indsættelser, der blev afvist, fordi budgettet er nul, posten alene overskrider MaxBytes, eller fordi intet kan evictes |
Recorden er erklæret i enheden FPdfCache og spejler tilstanden for den private governor, der er beskrevet på siden CacheGovernor. Værdierne indsamles under governor-låsen, så én læsning returnerer et gensidigt konsistent view, selv mens andre tråde renderer eller læser sider
Snapshotet dækker kun bibliotekets gemte cache-poster. Bitmap-kopier ejet af kalderen og returnerede snapshot-kopier holdes uden for budgettet, mens læsninger af dekodede streams forbliver flygtige og beholder deres hårde grænser pr. operation
Tællerne er kumulative over TPdf-instansens levetid; kapacitetsændringer, cache-rydninger og dokumentgenindlæsninger bevarer dem
En eviction tælles kun, når budgetpres smider en post ud; at en post frigives, fordi dens side blev redigeret, eller fordi dens cache blev ryddet eksplicit, er ikke en eviction
Når governoren ikke er tilgængelig, returnerer getteren en nulstillet record med alle felter på deres standardværdi
Stats := Pdf.CacheGovernorStatistics;
if Stats.PeakStoredBytes > Pdf.CacheBudgetBytes div 2 then
LogCachePressure(Stats.StoredBytes, Stats.EvictionCount);