Função ExInitializeRundownProtectionCacheAware (wdm.h)
Essa rotina inicializa um objeto de proteção de rundown com reconhecimento de cache.
Sintaxe
void ExInitializeRundownProtectionCacheAware(
[out] PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAware,
[in] SIZE_T RunRefSize
);
Parâmetros
[out] RunRefCacheAware
Ponteiro para um buffer fornecido pelo chamador em que a rotina retorna uma estrutura de EX_RUNDOWN_REF_CACHE_AWARE opaca. Confira Comentários para obter mais informações.
[in] RunRefSize
Especifica o tamanho, em bytes, do objeto de proteção de rundown.
Retornar valor
Nenhum
Comentários
A proteção contra rundown é um mecanismo de sincronização usado pelo kernel do Windows para limpo com segurança recursos que podem ser acessados por vários threads.
Essa função é otimizada para cenários em que os padrões de acesso a um recurso protegido têm reconhecimento de cache, o que significa que o mesmo thread provavelmente acessará o recurso repetidamente e threads diferentes provavelmente acessarão diferentes partes do recurso. Usando essa função em vez de ExInitializeRundownProtection, um driver pode reduzir a probabilidade de contenção de cache, em que vários threads competem pelas mesmas linhas de cache, levando à degradação do desempenho.
Normalmente, essa função é usada durante a fase de inicialização de um driver, quando está configurando os recursos necessários para operar. O driver chama essa função para cada recurso que precisa ser protegido pela proteção de rundown com reconhecimento de cache.
A estrutura EX_RUNDOWN_REF_CACHE_AWARE é uma estrutura opaca usada para gerenciar a proteção de rundown. O chamador deve primeiro chamar ExSizeOfRundownProtectionCacheAware para determinar o tamanho apropriado para o objeto de proteção de rundown. Esse tamanho deve ser usado para alocar um buffer para o parâmetro RunRefCacheAware e também passado como o parâmetro RunRefSize .
Requisitos
Requisito | Valor |
---|---|
Servidor mínimo com suporte | Windows Server 2003, Service Pack 1 |
Cabeçalho | wdm.h (inclua Wdm.h) |
IRQL | <= APC_LEVEL |
Confira também
ExAcquireRundownProtectionCacheAware
ExAcquireRundownProtectionCacheAwareEx
ExAllocateCacheAwareRundownProtection
ExFreeCacheAwareRundownProtection
ExReInitializeRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAwareEx
ExSizeOfRundownProtectionCacheAware