Çapraz Referans Haritası Sayfalama
Bir belgenin çapraz referans haritası THotPDF.XRefMapPagingThreshold girdisini aşacak kadar büyüdüğünde (varsayılan 250000, yoğun biçimde yaklaşık 8 MB), load-complete geçişi onu THPDFXRefMapPager içine paketler ve yoğun array'i serbest bırakır; böylece büyük belgeler her girdiyi align edilmiş bir record map'te tutmayı bırakır
THPDFXRefMapPager
Pager, paketlenmiş 24 byte'lık slot'ların (THPDFXRefMapSlot) sıralı bir anlık görüntüsünü saklar: nesne numarası, entry türü, 16-bit generation, offset ve object-stream konumu. GetEntry, LRU ile tutulan küçük 64 girdilik bir sayfa üzerinden binary search ile yanıt verir; böylece ardışık aramalar birçok girdi için tek sayfa decode eder. CollectFreeEntries, incremental-update yeniden kurulumu için serbest kümesini nesne numarası sırasında çıkarır
Teşhis ve tüketiciler
GetLoadedXRefMapPaged, sayfalı durumu girdi sayısı, snapshot byte'ları ve window hit/miss sayaçlarıyla raporlar; incremental-save serbest küme yeniden kurulumu ile tembel olarak oluşturulan stream üyelerinin dolaylı /Length çözümü pager üzerinden yanıtlanır, eşiği 0 yapmak ise sayfalamayı tamamen devre dışı bırakır