Compartilhar via


Método IHostGCManager::ThreadIsBlockingForSuspension

Notifica o host de que o thread do qual a chamada de método foi feita está prestes a ser bloqueado para uma coleta de lixo.

Sintaxe

HRESULT ThreadIsBlockingForSuspension ();  

Valor Retornado

HRESULT Descrição
S_OK ThreadIsBlockingForSuspension 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

O CLR normalmente chama o método ThreadIsBlockForSuspension em preparação para uma coleta de lixo, para dar ao host a oportunidade de reagendar o thread para tarefas não gerenciadas.

Importante

O host só pode reagendar tarefas após uma chamada para ThreadIsBlockingForSuspension. Depois que o runtime chama SuspensionStarting, o host não deve reagendar uma tarefa.

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