TPDFlibViewerBitmapCache
Типи даних, взаємодія з переглядачем, кешування
Опис
Кеш растрових зображень за алгоритмом LRU, що обмежує пам’ять, яку переглядач витрачає на відрендерені сторінкиЗаписи індексуються за номером сторінки разом із квантизованим масштабом, тому зміна масштабу природно витісняє застарілі відрендерені зображення в міру заповнення бюджету; кеш володіє своїми растровими зображеннями й вивільняє їх під час виселенняРастрове зображення, більше за весь бюджет, усе одно зберігається поодинці, щоб переглядач завжди міг показати поточну сторінкуКлас є чистим кодом без залежності від вікон, що робить його придатним для безголового тестування; переглядач відкриває свій примірник через властивість
Записи ключуються номером сторінки плюс квантизованим масштабом, тож зміна масштабу природно відправляє на пенсію застарілі рендеринги в міру заповнення бюджету; кеш володіє своїми бітмапами та звільняє їх при витісненні
Записи ключуються номером сторінки плюс квантизованим масштабом, тож зміна масштабу природно відправляє на пенсію застарілі рендеринги в міру заповнення бюджету; кеш володіє своїми бітмапами та звільняє їх при витісненні
Cache і змінює бюджет через SetCacheLimit
Оголошення
TPDFlibViewerBitmapCache = classКлючові елементи
| Create | Будує кеш із байтовим бюджетом, заданим AMaxBytes |
|---|---|
| Get | Повертає кешоване растрове зображення й позначає його нещодавно використаним, або Nil у разі промаху |
| Put | Зберігає растрове зображення під ключем і бере володіння; виселює найдавніше використані записи, доки бюджет не почне дотримуватися |
| RemovePage | Видаляє всі записи однієї сторінки за всіма ключами масштабу й обертання |
| Clear | Вивільняє кожне кешоване растрове зображення |
| Count | Кількість утримуваних растрових зображень |
| UsedBytes | Байти, утримувані на поточний момент |
| MaxBytes | Бюджет пам’яті в байтах, доступний для запису під час виконання |