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 | Nakonfigurovaný strop, roven CacheBudgetBytes |
| StoredBytes | Součet naměřených bajtů všech aktuálně uchovaných záznamů |
| PeakStoredBytes | Maximální hodnota StoredBytes od vytvoření instance |
| PinnedBytes | Část uložených bajtů držená připnutými záznamy, tedy aktuálně aktivními parsovanými scénami stránek |
| EntryCount | Počet uchovaných záznamů napříč všemi zúčastněnými mezipaměťmi |
| ReservationCount | Kumulativní počet přijatých vložení do mezipaměti |
| TouchCount | Kumulativní počet obnovení pro politiku nejdéle nepoužitých, jedno na každý zásah mezipaměti u uchovaného záznamu |
| EvictionCount | Kumulativní počet záznamů zahozených, aby využití zůstalo v rozpočtu |
| RejectionCount | Kumulativní počet odmítnutých vložení, protože rozpočet je nula, samotný záznam překračuje MaxBytes nebo nic nelze vystěhovat |
Záznam je deklarován v jednotce FPdfCache a zrcadlí stav soukromého správce popsaného na stránce CacheGovernor. Hodnoty se sbírají pod zámkem správce, takže jediné čtení vrací vzájemně konzistentní pohled, i když jiné vlákna vykreslují nebo čtou stránky
Snímek pokrývá jen uchované záznamy mezipaměti knihovny. Bitmapové kopie ve vlastnictví volajícího a vrácené kopie snímků zůstávají mimo rozpočet, zatímco čtení dekódovaných proudů zůstávají efemérní a drží si svá tvrdá limity na operaci
Čítače jsou kumulativní po dobu životnosti instance TPdf; změny kapacity, vyprázdnění mezipamětí a opětovná načtení dokumentu je zachovávají
Vystěhováním se počítá jen tehdy, když tlak rozpočtu záznam zahodí; uvolnění záznamu proto, že jeho stránka byla upravena nebo jeho mezipaměť byla explicitně vyprázdněna, vystěhováním není
Když není správce dostupný, getter vrací vynulovaný záznam s každým polem ve výchozí hodnotě
Stats := Pdf.CacheGovernorStatistics;
if Stats.PeakStoredBytes > Pdf.CacheBudgetBytes div 2 then
LogCachePressure(Stats.StoredBytes, Stats.EvictionCount);