StartRangeSourcePrefetch

文件管理、漸進式載入、效能

描述

將背景工作排入佇列,反覆探索並擷取頁面、表單或間接物件相依性圖形所需的缺少位元組範圍

語法

Delphi

Function TPDFlib.StartRangeSourcePrefetch(DataKind, Index, Priority: Integer;
  MaxBytes: Int64= 0; ReadAheadBytes: LongInt= 0;
  MaxPasses: Integer= 0): Integer;

參數

DataKindPDF_RANGE_DATA_PAGE、PDF_RANGE_DATA_FORM 或 PDF_RANGE_DATA_OBJECT
Index以 1 為起始的頁碼、表單查詢為零,或間接物件編號
PriorityPDF_RANGE_PREFETCH_PRIORITY_LOW、NORMAL、HIGH 或 CRITICAL
MaxBytes工作的讀取預算;零表示選用 64 MiB,明確值必須至少容納一個來源區塊
ReadAheadBytes在區塊對齊之前,於每個探索到的相依範圍之後排定額外讀取的位元組
MaxPasses相依性探索輪數上限;零表示選用 128

傳回值

成功時為正的串流本機工作控制代碼;當所選文件不是範圍後端或引數無效時為零,並將 LastErrorCode 設為 401

備註

每個範圍串流由一個工作者服務,挑選佇列中最高優先權,同優先權內保持 FIFO 順序

工作者在共用的 byte-range 快取上使用隔離的剖析器,依賴探索因此不與前景文件操作共用可變的讀取器狀態

位元組預算包括初始化與推進隔離依賴剖析器時進行的未快取讀取

預取的位元組仍受串流快取預算與最近最少使用裁汰政策的約束