PDFium Delphi Component Docs

ThumbnailCacheStatistics Свойство

Компонент: TPdf  ·  Модуль: PDFium
Возвращает телеметрию записей, байтов, попаданий, промахов и вытеснений зависящего от редакции кэша миниатюр

Syntax

property ThumbnailCacheStatistics: TPdfThumbnailCacheStatistics; // read only

 

type TPdfThumbnailCacheStatistics = record
  EntryCount: Integer;
  StoredBytes: Int64;
  HitCount: Int64;
  MissCount: Int64;
  EvictionCount: Int64;
end;

EntryCountУдерживаемые записи: действующие записи с битовыми картами и кэшированное отсутствие необязательных встроенных миниатюр
StoredBytesОценка памяти битовых карт как ширина, умноженная на высоту и на четыре байта; отрицательные записи нулевого размера ничего не добавляют
HitCountНакопительные обращения, обслуженные удерживаемой записью
MissCountНакопительные обращения, потребовавшие извлечения или отрисовки, включая все обращения при выключенном удержании
EvictionCountНакопительные записи, сброшенные давлением LRU или уменьшением потолка

Description

Повторные вызовы ExtractThumbnail и RenderPageThumbnail пополняют попадания и промахи под той же блокировкой отрисовки, которой пользуется нативный доступ к страницам PDFium, поэтому счётчики меняются только через документированные пути обращений

Каждое успешное обращение к битовой карте возвращает глубокую копию во владении вызывающего кода, поэтому освобождение или изменение возвращённой битовой карты не может повлиять на последующее попадание, а кэшированная запись сохраняет свои измеренные байты до вытеснения или объявления недействительной

Счётчики накапливаются в течение жизни экземпляра TPdf. ClearThumbnailCache и внутренние пути объявления недействительным их сохраняют

Remarks

Вытеснение засчитывается, когда давление потолка сбрасывает удерживаемую запись, включая вытеснение миниатюр регулятором ради соблюдения CacheBudgetBytes; сброс записей из-за правки их страницы — это объявление недействительным и EvictionCount не увеличивает

При недоступном кэше чтение возвращает обнулённую запись; на практике это случается только вне нормального времени жизни компонента

Example

Stats := Pdf.ThumbnailCacheStatistics;
LogThumbnailCache(Stats.EntryCount, Stats.HitCount, Stats.MissCount,
  Stats.EvictionCount);

See Also

ThumbnailCacheMaxEntries, ThumbnailCacheMaxBytes, ClearThumbnailCache, CacheGovernorStatistics, Кэш миниатюр