Vinduesopdelt lokal filmapping i THotPDF

Styrer den afgrænsede, skrivebeskyttede memory mapping, som LoadFromFile bruger til store lokale dokumenter

Deklarationer

property LocalFileMappingThreshold: Int64;
property LocalFileMappingWindowSize: Integer;
property LocalFileMappingCacheWindows: Integer;
property LocalFileMappingAdaptiveGeometry: boolean;
property LastLoadUsedMemoryMapping: boolean;

function GetLastMappedFileStatistics(
  out Statistics: THPDFMappedFileStatistics): boolean;

Standardværdier

IndstillingStandardværdiBetydning
LocalFileMappingThreshold8 MiBMindestørrelse på kilden, før memory mapping vælges; nul deaktiverer mapping
LocalFileMappingWindowSize16 MiBAntal byte, som én view dækker, justeret efter allocation granularity
LocalFileMappingCacheWindows4Maksimalt antal residente views, som LRU-cachen gemmer
LocalFileMappingAdaptiveGeometryTrueOmfordeler den samme mapped-byte-grænse til vedvarende sekventiel eller vilkårlig adgang

Statistik

THPDFMappedFileStatistics = record
  FileSize: Int64;
  ConfiguredWindowSize: Int64;
  ConfiguredCacheWindowCount: Integer;
  WindowSize: Int64;
  CacheWindowCount: Integer;
  MappedByteLimit: Int64;
  CurrentMappedBytes: Int64;
  PeakMappedBytes: Int64;
  GeometryChangeCount: Int64;
  SequentialReadCalls: Int64;
  RandomReadCalls: Int64;
  AdaptiveGeometry: Boolean;
  SequentialGeometryActive: Boolean;
  RandomGeometryActive: Boolean;
  ReadCalls: Int64;
  BytesRead: Int64;
  MapCount: Int64;
  CacheHits: Int64;
  FallbackReadCalls: Int64;
  FallbackBytes: Int64;
  DirectTransferCalls: Int64;
  DirectTransferBytes: Int64;
end;

GetLastMappedFileStatistics returnerer True, kun når den seneste LoadFromFile-operation valgte mapping

MapCount tæller nye views, og CacheHits tæller læsninger, som et eksisterende view betjener, så programmer og benchmarks kan afstemme vinduesgeometrien efter reelle adgangsmønstre

MappedByteLimit forbliver fast, mens WindowSize og CacheWindowCount rapporterer den aktive geometri; peak mapped bytes, mønstertællere og tilstandsflag gør hver tilpasning observerbar

Avancerede kildetyper

THPDFMappedFileSource ejer det delte fil-handle, mapping-objektet, de synkroniserede LRU-vinduer, referenceantallet og den positionsbaserede fallback-sti

THPDFMappedFileStream eksponerer en afgrænset, søgbar slice over den kilde, mens THPDFMappedFileWindow beskriver ét cached internt view

Adfærd

Se også: LocalFileMappingAdaptiveGeometry, LoadFromFile, Skalerbar og tilfældig adgang PDF-indlæsning, HPDFTransferStream, LoadedStreamMemoryThreshold