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 |