Chính sách chấp nhận bộ nhớ đệm THotPDF
Kiểm soát việc chấp nhận bộ nhớ đệm độc lập cho các dải nguồn nén thô, hình ảnh đã giải mã, danh sách hiển thị trang đã biên dịch và các trang raster đã kết xuất
Khai báo
THPDFCacheLayerKind = (clkRawCompressed, clkDecoded,
clkDisplayList, clkRaster);
THPDFCacheAdmissionPolicy = record
Enabled: boolean;
AdaptiveAdmission: boolean;
MaxEntries: Integer;
MaxTotalBytes: Int64;
MaxEntryBytes: Int64;
end;
THPDFCacheAdmissionStatistics = record
Enabled: boolean;
AdaptiveAdmission: boolean;
MaxEntries: Integer;
MaxTotalBytes: Int64;
MaxEntryBytes: Int64;
EntryCount: Integer;
CurrentBytes: Int64;
HitCount: Int64;
MissCount: Int64;
AdmissionCount: Int64;
RejectionCount: Int64;
EvictionCount: Int64;
FrequencyAdmissionCount: Int64;
FrequencyRejectionCount: Int64;
FrequencyAgingCount: Int64;
end;
procedure ResetCacheAdmissionPolicies;
procedure SetCacheAdmissionPolicy(Kind: THPDFCacheLayerKind;
const Policy: THPDFCacheAdmissionPolicy);
function GetCacheAdmissionPolicy(Kind: THPDFCacheLayerKind;
out Policy: THPDFCacheAdmissionPolicy): boolean;
function GetCacheAdmissionStatistics(Kind: THPDFCacheLayerKind;
out Statistics: THPDFCacheAdmissionStatistics): boolean;
Giới hạn mặc định
| Lớp | Số mục | Tổng byte | Mỗi mục | Thích ứng |
|---|---|---|---|---|
clkRawCompressed | 8 | 2 MiB | 256 KiB | Có |
clkDecoded | 256 | 32 MiB | 16 MiB | Có |
clkDisplayList | 64 | 64 MiB | 16 MiB | Có |
clkRaster | 8 | 128 MiB | 64 MiB | Có |
Hành vi chấp nhận
Một chính sách được bật yêu cầu giới hạn số mục, tổng byte và mỗi mục dương tính, đồng thời giới hạn mỗi mục không được vượt quá giới hạn tổng byte
Thay đổi một lớp không bao giờ thay đổi lớp khác, và hạ giới hạn sẽ ngay lập tức loại bỏ các mục ít được dùng gần nhất cho đến khi bộ nhớ đệm bị ảnh hưởng vừa khít
Với AdaptiveAdmission được bật, thứ tự ít được dùng gần nhất vẫn là đường dẫn truy cập gần đây nhanh trong khi một bản phác thảo tần suất có giới hạn bốn chiều so sánh ứng viên mới với mọi nạn nhân bắt buộc trước khi trục xuất
Một ứng viên ít nóng hơn bỏ qua việc giữ lại mà không làm xáo trộn yêu cầu hiện tại, tần suất bằng nhau ưu tiên ứng viên mới hơn, và việc lão hóa bộ đếm định kỳ cho phép một tập làm việc đã thay đổi thay thế các mục nóng trong lịch sử
Đặt AdaptiveAdmission thành False để giữ các giới hạn cứng tương tự với việc chấp nhận thuần túy theo thứ tự ít được dùng gần nhất
Các mục lớn hơn MaxEntryBytes được dùng cho thao tác hiện tại nhưng bỏ qua việc giữ lại, ngăn một hình ảnh đã giải mã lớn, danh sách hiển thị hoặc trang đã kết xuất thay thế các mục nhỏ hơn có thể tái sử dụng
Đặt Enabled thành False với giới hạn bằng 0 sẽ vô hiệu hóa việc giữ lại cho lớp đó, trong khi ResetCacheAdmissionPolicies khôi phục cả bốn giá trị mặc định
Thống kê
THPDFCacheAdmissionStatistics trả về các giới hạn đang hoạt động, chế độ thích ứng, số mục và byte chiếm dụng hiện tại, số lần trúng, số lần trượt, số lần chấp nhận, số lần từ chối, số lần trục xuất theo dung lượng, các quyết định tần suất và các chu kỳ lão hóa
Thống kê dải thô mô tả nguồn hợp nhất tự động được tạo bởi LoadFromRandomAccessSource; một THPDFCoalescingRandomAccessSource được cung cấp tường minh giữ lại cấu hình do người gọi chọn
Các thuộc tính tương thích
RenderCacheCapacity cập nhật giới hạn mục raster và ImageCacheMaxBytes cập nhật giới hạn tổng byte hình ảnh đã giải mã thông qua cùng đường xác thực chính sách và cắt giảm ngay lập tức
Xem thêm: Tải có khả năng mở rộng, THPDFCoalescingRandomAccessSource, LoadFromRandomAccessSource