Lazy sayfa ağacı yükleme
HotPDF, sıradan bir yüklü PDF sayfa ağacını kompakt bir placeholder tablosu olarak tutabilir ve tek tek sayfaları, bir API ilk kez ihtiyaç duyduğunda çözebilir
Etkinleştirme
LazyPageTreeThreshold varsayılan olarak 4096 sayfadır ve kökü kullanılabilir bir /Count ile /Kids yapısı sunan geçerli sayfa ağaçlarına uygulanır
Lazy sayfa ağacı işlemeyi devre dışı bırakmak için yüklemeden önce eşiği 0 olarak ayarlayın
Eşiğin altındaki dosyalar ve bozuk ağaçlar, mevcut eager kurtarma yolundan devam eder
Rastgele erişim
Bir sayfaya ilk erişim, alakasız dalları atlamak için alt ağaç /Count değerlerini takip eder ve indirect object'leri belgeye özgü bir open-addressed index üzerinden çözer
Çözülen sayfa kendi placeholder yuvasına yazılır; böylece tekrarlanan erişim doğrudan bir cache hit olur
Sıradan yüklü sayfa API'leri istenen sayfayı şeffaf biçimde materialize eder; MaterializeLoadedPage ise çağıranın bilinen bir sayfayı açıkça hazırlamasına izin verir
Tam genişletme ve mutasyon
MaterializeAllLoadedPages, kalan ağacı kanonik sayfa sırasına göre genişletir
Yüklü sayfaları yapısal olarak ekleyen, silen, kopyalayan, değiştiren, taşıyan, ters çeviren, takas eden, yeniden kuran veya kaydeden işlemler, sayfa graph'ını mutasyona uğratmadan ya da serileştirmeden önce tam genişletme yapar
Bu, okuma odaklı erişimi geçilen dal derinliğiyle orantılı tutarken mevcut mutasyon ve kaydetme semantiğini korur
Telemetri
GetLoadedPageTreeStatistics, placeholder depolamasını, materialize edilen sayfaları, dolaşım derinliğini ve işini, object-index kapasitesini, cache etkinliğini ve tam genişletmeleri materialization'ı zorlamadan raporlar
Bir regression gate, desteklenen Windows hedeflerinde 100.000 sayfayı, 256 MiB working-set büyüme tavanı ve 500 ms ilk rastgele erişim tavanıyla kapsar
Ayrıca bakınız: LazyPageTreeThreshold, MaterializeLoadedPage, MaterializeAllLoadedPages, GetLoadedPageTreeStatistics