Leniwe ładowanie drzewa stron
HotPDF może zachować zwykłe załadowane drzewo stron PDF jako zwartą tabelę zastępczą i rozwiązywać poszczególne strony tylko wtedy, gdy API po raz pierwszy ich potrzebuje
Aktywacja
LazyPageTreeThreshold domyślnie wynosi 4096 stron i stosuje się do prawidłowych drzew stron, których korzeń wystawia użyteczną strukturę /Count i /Kids
Ustaw próg na 0 przed ładowaniem, aby wyłączyć leniwą obsługę drzewa stron
Pliki poniżej progu i źle uformowane drzewa nadal przechodzą przez istniejącą pilną ścieżkę odzyskiwania
Dostęp losowy
Pierwszy dostęp do strony podąża za wartościami /Count poddrzew, aby pominąć niepowiązane gałęzie, i rozwięzi obiekty pośrednie przez lokalny dla dokumentu indeks adresowania otwartego
Rozwiązana strona jest przechowywana w swoim slocie zastępczym, więc powtarzany dostęp jest bezpośrednim trafieniem pamięci podręcznej
Zwykłe API załadowanych stron materializują żądaną stronę przejrzyście, podczas gdy MaterializeLoadedPage pozwala wywołującym jawnie przygotować znaną stronę
Pełna ekspansja i mutacja
MaterializeAllLoadedPages rozszerza pozostałe drzewo w kanonicznej kolejności stron
Operacje, które strukturalnie dodają, usuwają, kopiują, zastępują, przenoszą, odwracają, zamieniają, przebudowują lub zapisują załadowane strony, wykonują pełną ekspansję przed mutowaniem lub serializacją grafu stron
Zachowuje to istniejące semantyki mutacji i zapisu, utrzymując dostęp zorientowany na odczyt proporcjonalny do głębokości przebytej gałęzi
Telemetria
GetLoadedPageTreeStatistics raportuje magazyn zastępczy, zmaterializowane strony, głębokość i pracę przechodzenia, pojemność indeksu obiektów, aktywność pamięci podręcznej i pełne ekspansje bez wymuszania materializacji
Brama regresji obejmuje 100 000 stron z sufitem wzrostu zestawu roboczego 256 MiB i sufitem pierwszego dostępu losowego 500 ms na obsługiwanych celach Windows
Zobacz także: LazyPageTreeThreshold, MaterializeLoadedPage, MaterializeAllLoadedPages, GetLoadedPageTreeStatistics