StartRangeSourcePrefetch
文件管理、漸進式載入、效能
描述
將背景工作排入佇列,反覆探索並擷取頁面、表單或間接物件相依性圖形所需的缺少位元組範圍
語法
Delphi
Function TPDFlib.StartRangeSourcePrefetch(DataKind, Index, Priority: Integer;
MaxBytes: Int64= 0; ReadAheadBytes: LongInt= 0;
MaxPasses: Integer= 0): Integer;參數
| DataKind | PDF_RANGE_DATA_PAGE、PDF_RANGE_DATA_FORM 或 PDF_RANGE_DATA_OBJECT |
|---|---|
| Index | 以 1 為起始的頁碼、表單查詢為零,或間接物件編號 |
| Priority | PDF_RANGE_PREFETCH_PRIORITY_LOW、NORMAL、HIGH 或 CRITICAL |
| MaxBytes | 工作的讀取預算;零表示選用 64 MiB,明確值必須至少容納一個來源區塊 |
| ReadAheadBytes | 在區塊對齊之前,於每個探索到的相依範圍之後排定額外讀取的位元組 |
| MaxPasses | 相依性探索輪數上限;零表示選用 128 |
傳回值
成功時為正的串流本機工作控制代碼;當所選文件不是範圍後端或引數無效時為零,並將 LastErrorCode 設為 401
備註
每個範圍串流由一個工作者服務,挑選佇列中最高優先權,同優先權內保持 FIFO 順序
工作者在共用的 byte-range 快取上使用隔離的剖析器,依賴探索因此不與前景文件操作共用可變的讀取器狀態
位元組預算包括初始化與推進隔離依賴剖析器時進行的未快取讀取
預取的位元組仍受串流快取預算與最近最少使用裁汰政策的約束