Función CcScheduleReadAheadEx (ntifs.h)

La rutina CcScheduleReadAheadEx realiza lectura anticipada (también denominada "lectura diferida") en un archivo almacenado en caché. El número de bytes de E/S de la operación se cobra al subproceso emisor.

Sintaxis

void CcScheduleReadAheadEx(
  [in] PFILE_OBJECT   FileObject,
  [in] PLARGE_INTEGER FileOffset,
  [in] ULONG          Length,
  [in] PETHREAD       IoIssuerThread
);

Parámetros

[in] FileObject

Puntero a un objeto de archivo para el archivo en el que se va a realizar la lectura anticipada.

[in] FileOffset

Puntero a una variable que especifica el desplazamiento de bytes inicial dentro del archivo almacenado en caché donde se produjo la última lectura.

[in] Length

Longitud en bytes del intervalo que se leyó por última vez.

[in] IoIssuerThread

Subproceso que emite la solicitud de lectura anticipada. Para un sistema de archivos con la contabilidad de E/S de disco habilitada, este es el subproceso al que se cobra la E/S. Si IoIssuerThread es NULL, la E/S se carga en el subproceso actual.

Valor devuelto

None

Observaciones

Solo se debe llamar a CcScheduleReadAheadEx cuando Length>= 256. Las medidas han demostrado que llamar a CcScheduleReadAheadEx para lecturas más pequeñas reduce realmente el rendimiento.

Solo se puede llamar a CcScheduleReadAheadEx después de una llamada correcta a CcCopyRead, CcCopyReadEx, CcFastCopyRead o CcMdlRead.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 8
Plataforma de destino Universal
Encabezado ntifs.h (incluya Ntifs.h, FltKernel.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Consulte también

CcCopyRead

CcCopyReadEx

CcFastCopyRead

CcMdlRead.

CcReadAhead

CcSetAdditionalCacheAttributes

CcSetReadAheadGranularity