| Type | Description |
|---|---|
EPdfCacheError | Rapporteert ongeldige budgetten, invoergroottes en deelnemers |
TPdfCacheKind | Classificeert paginascenes (pckPageScene), tiles (pckTile), miniaturen (pckThumbnail), systeemlettertypen (pckSystemFont), structuurdata (pckStructure), tekstmomentopnamen (pckTextSnapshot), page-object-momentopnamen (pckPageObjectSnapshot), gedecodeerde streams (pckDecodedStream) en applicatie-invoeren (pckApplication) |
TPdfCacheGovernorStatistics | Rapporteert budget, huidige en piekvastgehouden bytes, gepinde bytes, invoeraantal, reserveringen, aanrakingen, evicties en afwijzingen; velden zijn onder andere MaxBytes, StoredBytes, PeakStoredBytes, PinnedBytes, EntryCount, ReservationCount, TouchCount, EvictionCount, RejectionCount |
TPdfCacheParticipant | Ontvangt synchrone EvictCacheEntry-callbacks nadat de governor een token uit zijn administratie heeft verwijderd |
TPdfCacheGovernorEntry | Intern administratierecord dat voor compilercompatibiliteit is blootgesteld; velden zijn onder andere Token, Participant, Kind, StoredBytes, LastUsed en Pinned |
TPdfCacheGovernor | Thread-safe tokenregister met één globale least-recently-used-volgorde over deelnemers en cacheoorten heen |
| Member | Description |
|---|---|
Create(AMaxBytes: Int64) | Maakt een governor met een niet-negatief bytebudget |
Destroy | Wist geregistreerde invoeren voordat de synchronisatiestatus wordt vrijgegeven |
Reserve | Reserveert bytes en geeft een positief token terug, waarbij wereldwijd LRU-invoeren worden geëvicteerd indien mogelijk of nul wordt teruggegeven wanneer de invoer niet past |
Touch | Verplaatst een bestaand token naar de nieuwste positie |
Release | Verwijdert de administratie van een token zonder zijn eviction-callback aan te roepen |
SetPinned | Beschermt of ontbeschermt een in-gebruik-invoer en trimt na het losmaken |
Clear | Verwijdert alle tokens en verzoekt elke deelnemer zijn vastgehouden invoer vrij te geven |
Contains | Test of een token nog steeds geregistreerd is |
UsageForKind | Geeft de vastgehouden bytes voor één TPdfCacheKind terug |
EntryCountForKind | Geeft het geregistreerde invoeraantal voor één TPdfCacheKind terug |
Statistics | Geeft een lock-beveiligde telemetrie-momentopname terug |
MaxBytes | Leest of wijzigt het totale budget en trimt na een verlaging onmiddellijk niet-gepinde invoeren |
De governor is nooit eigenaar van deelnemers of hun vastgehouden data
Elke deelnemer moet langer bestaan dan al zijn geregistreerde tokens en mag geen exceptie verhogen vanuit EvictCacheEntry
Callbacks draaien synchroon zonder dat de governorlock vastgehouden wordt, zodat deelnemers veilig Release voor gerelateerde tokens kunnen aanroepen
Gepinde invoeren kunnen StoredBytes tijdelijk boven een verlaagde MaxBytes-waarde houden totdat de laatste gebruiker ze losmaakt
FPDF_RENDER_LIMITEDIMAGECACHE blijft beschikbaar via reLimitCache en past de vaste native per-page afbeeldingscachelimiet van PDFium toe
PDFium stelt geen publieke ABI bloot voor een configureerbaar of opvraagbaar procesbreed cachebytebudget
De governor meet daarom de objecten die PDFium Delphi Component zelf vasthoudt en gebruikt een expliciete schatting voor ondoorzichtig geparsede paginascenes