StartRangeSourcePrefetch
Gestion de documents, chargement progressif, performances
Description
Place dans la file un travail d'arrière-plan qui découvre et récupère de manière répétée les plages d'octets manquantes requises par un graphe de dépendances de pages, de formulaires ou d'objets indirects
Syntaxe
Delphi
Function TPDFlib.StartRangeSourcePrefetch(DataKind, Index, Priority: Integer;
MaxBytes: Int64= 0; ReadAheadBytes: LongInt= 0;
MaxPasses: Integer= 0): Integer;Paramètres
| DataKind | PDF_RANGE_DATA_PAGE, PDF_RANGE_DATA_FORM ou PDF_RANGE_DATA_OBJECT |
|---|---|
| Index | Un numéro de page à base 1, zéro pour la requête de formulaire, ou un numéro d'objet indirect |
| Priority | PDF_RANGE_PREFETCH_PRIORITY_LOW, NORMAL, HIGH ou CRITICAL |
| MaxBytes | Le budget de lecture du travail ; zéro sélectionne 64 Mio et une valeur explicite doit tenir au moins un bloc source |
| ReadAheadBytes | Octets supplémentaires programmés après chaque plage de dépendances découverte avant l'alignement sur les blocs |
| MaxPasses | Le nombre maximal de tours de découverte des dépendances ; zéro sélectionne 128 |
Valeur de retour
Un handle de travail positif local au flux en cas de succès, ou zéro avec LastErrorCode défini à 401 lorsque le document sélectionné n'est pas adossé à des plages ou que les arguments sont invalides
Remarques
Un worker sert chaque flux de plages et choisit la priorité en file la plus haute, en préservant l'ordre FIFO au sein des priorités égales
Le worker utilise un analyseur isolé sur le cache de plages d'octets partagé ; la découverte de dépendances ne partage donc pas d'état de lecteur mutable avec les opérations documentaires de premier plan
Le budget d'octets inclut les lectures non mises en cache effectuées lors de l'initialisation et de l'avancement de l'analyseur de dépendances isolé
Les octets préchargés restent soumis au budget du cache de flux et à la politique d'éviction selon le moins récent usage