Okenné mapovanie lokálnych súborov THotPDF

Riadi ohraničené mapovanie pamäte určené len na čítanie používané metódou LoadFromFile pre veľké lokálne dokumenty

Deklarácie

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

function GetLastMappedFileStatistics(
  out Statistics: THPDFMappedFileStatistics): boolean;

Predvolené hodnoty

NastaveniePredvolená hodnotaVýznam
LocalFileMappingThreshold8 MiBMinimálna veľkosť zdroja, ktorá vyberie mapovanie pamäte; nula vypne mapovanie
LocalFileMappingWindowSize16 MiBBajty pokryté jedným pohľadom zarovnaným na granularitu alokácie
LocalFileMappingCacheWindows4Maximálny počet rezidentných pohľadov uchovávaných vyrovnávacou pamäťou LRU
LocalFileMappingAdaptiveGeometryTruePrerozdeliť rovnaký limit mapovaných bajtov pre trvalý sekvenčný alebo náhodný prístup

Štatistiky

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 vráti True iba vtedy, keď posledná operácia LoadFromFile vybrala mapovanie

MapCount počíta nové pohľady a CacheHits počíta čítania obslúžené existujúcim pohľadom, čo aplikáciám a benchmarkom umožňuje doladiť geometriu okien podľa skutočných vzorov prístupu

MappedByteLimit zostáva pevný, zatiaľ čo WindowSize a CacheWindowCount hlásia aktívnu geometriu; špičkové mapované bajty, počty vzorov a príznaky režimu robia každú adaptáciu pozorovateľnou

Pokročilé typy zdrojov

THPDFMappedFileSource vlastní zdieľaný popisovač súboru, objekt mapovania, synchronizované okná LRU, počet odkazov a cestu pozičného záložného riešenia

THPDFMappedFileStream vystavuje ohraničený vyhľadávateľný výrez nad týmto zdrojom, zatiaľ čo THPDFMappedFileWindow popisuje jeden uložený interný pohľad

Správanie

Pozri tiež: LocalFileMappingAdaptiveGeometry, LoadFromFile, Škálovateľné načítanie, HPDFTransferStream, LoadedStreamMemoryThreshold