Função CcDeferWrite (ntifs.h)
A rotina CcDeferWrite adia a gravação em um arquivo armazenado em cache. A rotina de postagem fornecida é chamada pelo gerenciador de cache quando pode acomodar a operação de gravação.
Sintaxe
void CcDeferWrite(
[in] PFILE_OBJECT FileObject,
[in] PCC_POST_DEFERRED_WRITE PostRoutine,
[in] PVOID Context1,
[in] PVOID Context2,
[in] ULONG BytesToWrite,
[in] BOOLEAN Retrying
);
Parâmetros
[in] FileObject
Ponteiro para um objeto de arquivo para o arquivo armazenado em cache no qual os dados devem ser gravados.
[in] PostRoutine
Endereço de uma rotina para o gerenciador de cache chamar para gravar no arquivo armazenado em cache. Observe que é possível que essa rotina seja chamada imediatamente, mesmo que CcCanIWrite tenha acabado de retornar FALSE .
A rotina de postagem é definida em ntifs.h como:
typedef
VOID (*PCC_POST_DEFERRED_WRITE) (
_In_ PVOID Context1,
_In_ PVOID Context2
);
[in] Context1
Primeiro parâmetro para a rotina de postagem no PostRoutine.
[in] Context2
Segundo parâmetro para a rotina de postagem no PostRoutine.
[in] BytesToWrite
Número de bytes de dados a serem gravados.
[in] Retrying
Defina como FALSE se a solicitação estiver sendo postada pela primeira vez; caso contrário, TRUE .
Retornar valor
Nenhum
Comentários
Um sistema de arquivos normalmente chamaria CcDeferWrite depois de receber um valor retornado de FALSE de CcCanIWrite.
Para armazenar em cache um arquivo, use CcInitializeCacheMap.
Os parâmetros de contexto passados para o PostRoutine normalmente são a solicitação de E/S e os dados de contexto relacionados.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Cabeçalho | ntifs.h (inclua Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de