Método ICLRSyncManager::GetRWLockOwnerNext
Obtém a próxima instância IHostTask que está bloqueada no bloqueio do leitor-gravador atual.
Sintaxe
HRESULT GetRWLockOwnerNext (
[in] SIZE_T Iterator,
[out] IHostTask *ppOwnerHostTask
);
Parâmetros
Iterator
[in] O enumerador que foi criado usando uma chamada para CreateRWLockOwnerIterator.
ppOwnerHostTask
[out] Um ponteiro para o próximo IHostTask
que está esperando no bloqueio ou nulo se nenhuma tarefa estiver em espera.
Valor Retornado
HRESULT | Descrição |
---|---|
S_OK | GetRWLockOwnerNext 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. |
Comentários
Se ppOwnerHostTask
estiver definido como nulo, a enumeração será encerrada e o host deverá chamar o método DeleteRWLockOwnerIterator.
Observação
O CLR chama AddRef
no IHostTask
para o qualppOwnerHostTask
aponta a fim de impedir que essa tarefa saia enquanto o host detém o ponteiro. O host deve chamar Release
para diminuir a contagem de referência quando ela for concluída.
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