Odwrotny indeks obiektów stron
HotPDF utrzymuje lokalny dla dokumentu indeks odwrotny od tożsamości obiektu strony do pozycji strony liczonej od zera
Zachowanie wyszukiwania
GetPageArrIndexForObjectNumber przyjmuje numer obiektu PDF, a GetPageArrIndexForObject przyjmuje zarówno rozwiązany obiekt strony, jak i THPDFLink
Obie metody zwracają -1, gdy wartość nie identyfikuje bieżącej strony
Jeśli źle uformowane wejście wystawi tę samą tożsamość więcej niż raz, deterministycznie wygrywa pierwsza strona w kolejności dokumentu
Budowa i unieważnianie
Indeks jest budowany leniwie przy pierwszym wyszukaniu i używa osobnych map z adresowaniem otwartym dla numerów obiektów i rozwiązanych wskaźników obiektów
Ładowanie, resetowanie, dodawanie, usuwanie, kopiowanie, zastępowanie, przenoszenie, odwracanie, zamiana, przestawianie lub uzgadnianie stron unieważnia mapy
Następne wyszukanie przebudowuje obie mapy z bieżącej kolejności stron, więc koszt mutacji nie zawiera zapobiegliwej przebudowy indeksu
Wydajność i własność
Mapy utrzymują współczynnik wypełnienia poniżej połowy i zapewniają oczekiwane wyszukiwanie w stałym czasie po budowie O(page count)
Brama regresji wykonuje milion wyszukiwań po mutacji w tabeli 100 000 stron i wymaga latencji p95 poniżej 5 mikrosekund na obu obsługiwanych celach Windows
Indeks przechowuje niewłasnościowe wskaźniki obiektów i jest zwalniany razem ze swoją instancją THotPDF
Nie mutuj instancji THotPDF współbieżnie z wyszukiwaniem stron, bo mutacja grafu załadowanego dokumentu pozostaje uszeregowana przez wywołującego
Zobacz też: GetPageArrIndexForObjectNumber, GetPageArrIndexForObject, GetPageReverseIndexStatistics