クロスリファレンスマップページング
ドキュメントのクロスリファレンスマップが THotPDF.XRefMapPagingThreshold エントリ(デフォルト 250000、約 8 MB の密集)を超えると、ロード完了パスはそれを THPDFXRefMapPager にパックして密集配列を解放するため、大きなドキュメントは整列されたレコードマップ内のすべてのエントリを保持しなくなります
THPDFXRefMapPager
ページャーはパックされた 24 バイトスロット(THPDFXRefMapSlot)のソート済みスナップショットを格納します。つまりオブジェクト番号、エントリタイプ、16 ビット世代、オフセット、およびオブジェクトストリームの位置です。GetEntry は小さな LRU で具体化された 64 エントリページを介してバイナリ検索に答えるため、順次ルックアップは多数のエントリに対して 1 ページをデコードします。CollectFreeEntries は、増分更新の再構築のためにオブジェクト番号順にフリーセットを抽出します
診断とコンシューマ
GetLoadedXRefMapPaged は、エントリ数、スナップショットバイト数、ウィンドウのヒットまたはミス数とともにページング状態を報告します。増分保存のフリーセット再構築と、遅延具体化されたストリームメンバーの間接的な /Length 解決はページャーを介して答え、しきい値を 0 に設定するとページングが完全に無効になります