Compartir a través de


Función CcScheduleReadAheadEx (ntifs.h)

La rutina de CcScheduleReadAhead Ex realiza lectura anticipada (también denominada "lectura diferida") en un archivo almacenado en caché. El recuento de bytes de E/S para 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

Ninguno

Observaciones

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

CcScheduleReadAheadEx solo se puede llamar después de una llamada correcta a CcCopyRead, ccCopyReadEx, CcFastCopyReado CcMdlRead.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 8
de la plataforma de destino de Universal
encabezado de ntifs.h (incluya Ntifs.h, FltKernel.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <= APC_LEVEL

Consulte también

ccCopyRead

ccCopyReadEx

ccFastCopyRead

ccMdlRead.

ccReadAhead

CcSetAdditionalCacheAttributes

ccSetReadAheadGranularity