StartRangeSourcePrefetch

Gestión de documentos, carga progresiva, rendimiento

Descripción

Encola un trabajo en segundo plano que descubre y obtiene repetidamente los rangos de bytes ausentes requeridos por el grafo de dependencias de una página, formulario u objeto indirecto

Sintaxis

Delphi

Function TPDFlib.StartRangeSourcePrefetch(DataKind, Index, Priority: Integer;
  MaxBytes: Int64= 0; ReadAheadBytes: LongInt= 0;
  MaxPasses: Integer= 0): Integer;

Parámetros

DataKindPDF_RANGE_DATA_PAGE, PDF_RANGE_DATA_FORM o PDF_RANGE_DATA_OBJECT
IndexUn número de página con base 1, cero para la consulta del formulario, o un número de objeto indirecto
PriorityPDF_RANGE_PREFETCH_PRIORITY_LOW, NORMAL, HIGH o CRITICAL
MaxBytesEl presupuesto de lectura del trabajo; cero selecciona 64 MiB y un valor explícito debe cubrir al menos un bloque de origen
ReadAheadBytesBytes adicionales programados después de cada rango de dependencia descubierto antes de la alineación de bloques
MaxPassesEl máximo de rondas de descubrimiento de dependencias; cero selecciona 128

Valor devuelto

Un manipulador de trabajo local de flujo positivo en caso de éxito, o cero con LastErrorCode establecido en 401 cuando el documento seleccionado no tiene respaldo de rangos o los argumentos no son válidos

Observaciones

Un worker atiende cada flujo por rangos y elige la prioridad en cola más alta, preservando el orden FIFO dentro de prioridades iguales

El worker usa un analizador aislado sobre la caché por rangos de bytes compartida, así que el descubrimiento de dependencias no comparte estado mutable de lector con las operaciones de documento en primer plano

El presupuesto de bytes incluye las lecturas sin caché realizadas al inicializar y avanzar el analizador de dependencias aislado

Los bytes precargados siguen sujetos al presupuesto de la caché de flujos y a la política de desalojo por menos uso reciente