Compartilhar via


Método IHostSyncManager::CreateRWLockReaderEvent

Cria um objeto de evento de redefinição manual para a implementação de um bloqueio de leitor.

Sintaxe

HRESULT CreateRWLockReaderEvent (  
    [in]  BOOL bInitialState,  
    [in]  SIZE_T cookie,  
    [out] IHostManualEvent **ppEvent  
);  

Parâmetros

bInitialState
[in] true, se ppEvent deve ser sinalizado; caso contrário, false.

cookie
[in] Um cookie a ser associado ao bloqueio do leitor.

ppEvent
[out] Um ponteiro para o endereço de uma instância IHostManualEvent ou nulo se o evento do objeto não pôde ser criado.

Valor Retornado

HRESULT Descrição
S_OK CreateRWLockReaderEvent retornado com êxito.
HOST_E_CLRNOTAVAILABLE O CLR (Common Language Runtime) não foi carregado em um processo ou está em um estado no qual não pode executar o código gerenciado ou processar a chamada com sucesso.
HOST_E_TIMEOUT Uma chamada atingiu o tempo limite.
HOST_E_NOT_OWNER O chamador não possui o bloqueio.
HOST_E_ABANDONED Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele.
E_FAIL Uma falha catastrófica desconhecida ocorreu. Quando um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY Não havia memória suficiente disponível para criar o objeto de evento solicitado.

Comentários

O CLR chama CreateRWLockReaderEvent para obter uma referência a uma instância IHostManualEvent a ser usada em sua implementação de um bloqueio de leitor. O host pode usar o cookie para determinar quais tarefas estão aguardando no bloqueio do leitor consultando a interface ICLRSyncManager.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: MSCorEE.h

Biblioteca: incluída como um recurso no MSCorEE.dll

Versões do .NET Framework: disponíveis desde 2.0

Confira também