PDFium Delphi Component Docs

FPdfCache-enhet

Unit: FPdfCache
Tillhandahåller en delad bytebudgethanterare för kvarhållen PDF-data vars ägare kan frigöra poster på begäran

Types

TypeDescription
EPdfCacheErrorRapporterar ogiltiga budgeter, poststorlekar och deltagare
TPdfCacheKindKlassificerar sidoscener (pckPageScene), renderingsrutor (pckTile), miniatyrbilder (pckThumbnail), systemtypsnitt (pckSystemFont), strukturdata (pckStructure), textögonblicksbilder (pckTextSnapshot), sidobjektögonblicksbilder (pckPageObjectSnapshot), avkodade strömmar (pckDecodedStream) och applikationsposter (pckApplication)
TPdfCacheGovernorStatisticsRapporterar budgeten, aktuella och högsta kvarhållna bytes, pinned bytes, postantal, reservationer, touchningar, utkastningar och avvisningar; fälten inkluderar MaxBytes, StoredBytes, PeakStoredBytes, PinnedBytes, EntryCount, ReservationCount, TouchCount, EvictionCount, RejectionCount
TPdfCacheParticipantTar emot synkrona EvictCacheEntry-återanrop efter att budgethanteraren har tagit bort en token ur sin bokföring
TPdfCacheGovernorEntryIntern bokföringspost som exponeras för kompilatorkompatibilitet; fälten inkluderar Token, Participant, Kind, StoredBytes, LastUsed och Pinned
TPdfCacheGovernorTrådsäkert tokenregister med en global minst-nyligen-använd-ordning över deltagare och cachetyper

TPdfCacheGovernor members

MemberDescription
Create(AMaxBytes: Int64)Skapar en budgethanterare med en icke-negativ bytebudget
DestroyRensar registrerade poster innan synkroniseringstillståndet frigörs
ReserveReserverar bytes och returnerar en positiv token, kastar ut globala LRU-poster när det går eller returnerar noll när posten inte ryms
TouchFlyttar en befintlig token till den nyaste positionen
ReleaseTar bort bokföringen för en token utan att anropa dess utkastningsåteranrop
SetPinnedSkyddar eller avskyddar en post som används och trimmar efter att skyddet släppts
ClearTar bort alla tokens och ber varje deltagare frigöra sin kvarhållna post
ContainsTestar om en token fortfarande är registrerad
UsageForKindReturnerar kvarhållna bytes för en TPdfCacheKind
EntryCountForKindReturnerar antalet registrerade poster för en TPdfCacheKind
StatisticsReturnerar en låsskyddad telemetriögonblicksbild
MaxBytesLäser eller ändrar totalbudgeten och trimmar omedelbart oskyddade poster efter en minskning

Ownership and callback contract

Budgethanteraren äger aldrig deltagare eller deras kvarhållna data

Varje deltagare måste överleva alla sina registrerade tokens och får inte kasta undantag från EvictCacheEntry

Återanropen körs synkront utan att budgethanterarens lås hålls, så deltagare kan tryggt anropa Release för relaterade tokens

Skyddade poster kan tillfälligt hålla StoredBytes över ett sänkt MaxBytes-värde tills den sista användaren släpper dem

PDFium boundary

FPDF_RENDER_LIMITEDIMAGECACHE förblir tillgänglig via reLimitCache och tillämpar PDFiums fasta nativa bildcachegräns per sida

PDFium exponerar inget publikt ABI för en konfigurerbar eller frågbar processövergripande bytebudget för cachen

Budgethanteraren mäter därför de kvarhållna objekt som PDFium Delphi Component äger och använder en explicit uppskattning för opaka tolkade sidoscener

See Also

TPdf-bytebudgethanteraren, TPdfTileCache, ConfigureSystemFontCacheGovernor