property CacheBudgetBytes: Int64; // default 256 MiB
값을 바꾸면 이 TPdf 인스턴스가 소유한 모든 참여 캐시에 즉시 적용됩니다
값을 0으로 설정하면 새 유지가 비활성화되고 비활성 항목이 모두 내보내집니다
음수 값을 설정하면 EPdfError가 발생합니다
활성 파싱 페이지 장면은 고정되어 있으므로, 렌더링이 해제할 때까지 측정된 사용량이 줄어든 예산을 잠시 넘을 수 있습니다
property CacheGovernor: TPdfCacheGovernor; // read-only, owned by TPdf
종류별 사용량 조회와 애플리케이션이 소유한 캐시와의 선택적 조율에 쓰이는 공유 거버너를 반환합니다
반환된 객체를 임의로 해제하지 말고, 소유 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;