Função CcScheduleReadAheadEx (ntifs.h)

A rotina CcScheduleReadAheadEx executa leitura antecipada (também chamada de "leitura lenta") em um arquivo armazenado em cache. A contagem de bytes de E/S da operação é cobrada para o thread emissor.

Sintaxe

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

Parâmetros

[in] FileObject

Ponteiro para um objeto de arquivo para o arquivo no qual a leitura antecipada deve ser executada.

[in] FileOffset

Ponteiro para uma variável que especifica o deslocamento de bytes inicial dentro do arquivo armazenado em cache em que a última leitura ocorreu.

[in] Length

Comprimento em bytes do intervalo que foi lido pela última vez.

[in] IoIssuerThread

O thread que emite a solicitação de leitura antecipada. Para um sistema de arquivos com a contabilidade de E/S de disco habilitada, esse é o thread ao qual a E/S é cobrada. Se IoIssuerThread for NULL, a E/S será cobrada para o thread atual.

Retornar valor

Nenhum

Comentários

CcScheduleReadAheadEx deve ser chamado somente quando Length>= 256. As medidas mostraram que chamar CcScheduleReadAheadEx para leituras menores realmente diminui o desempenho.

CcScheduleReadAheadEx só pode ser chamado após uma chamada bem-sucedida para CcCopyRead, CcCopyReadEx, CcFastCopyRead ou CcMdlRead.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8
Plataforma de Destino Universal
Cabeçalho ntifs.h (include Ntifs.h, FltKernel.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Confira também

CcCopyRead

CcCopyReadEx

CcFastCopyRead

CcMdlRead.

CcReadAhead

CcSetAdditionalCacheAttributes

CcSetReadAheadGranularity