property CacheBudgetBytes: Int64; // default 256 MiB
變更數值會立即套用到此 TPdf 執行個體擁有的每個參與快取
設為零會停用新的保留,並驅逐每個非作用中的項目
負值會拋出 EPdfError
作用中的已解析頁面場景會被釘選,在算繪釋放它們之前,量測到的用量可能暫時高於調降後的預算
property CacheGovernor: TPdfCacheGovernor; // read-only, owned by TPdf
傳回共用的 governor,可用於各類別的用量查詢,以及與應用程式自有快取的選用協調
不要釋放傳回的物件,也不要在擁有的 TPdf 執行個體摧毀後繼續保留它
呼叫端可透過遵循 FPdfCache 回呼與存續期合約的參與者註冊 pckApplication 項目
property CacheGovernorStatistics: TPdfCacheGovernorStatistics;
傳回目前與尖峰量測位元組數、釘選位元組數、項目數、保留與觸控活動、驅逐次數,以及被拒絕的保留要求
此快照只涵蓋程式庫保留的快取項目
呼叫端自有的點陣圖複本與傳回的快照複本不在預算之內,已解碼串流的讀取仍屬暫時性,並維持既有的每作業硬上限
點陣圖快取以寬 × 高 × 4 位元組計算
受管理的快照快取包含記錄陣列、字串、位元組緩衝區、路徑線段、剪裁資料、標記、影像中繼資料與巢狀值
已解析的 PDFium 頁面場景是不透明的原生控制代碼,每個保留場景計入 8 MiB 的會計費用,並不代表確切的原生堆積用量
var
Stats: TPdfCacheGovernorStatistics;
begin
Pdf.CacheBudgetBytes := Int64(128) * 1024 * 1024;
Stats := Pdf.CacheGovernorStatistics;
LogCacheUsage(Stats.StoredBytes, Stats.PeakStoredBytes,
Pdf.CacheGovernor.UsageForKind(pckThumbnail));
end;