Partilhar via


Método de ICLRTask2::BeginPreventAsyncAbort

Novo segmento de atrasos anular as solicitações de resultando em anulações de thread no thread atual.

HRESULT BeginPreventAsyncAbort();

Valor de retorno

Esse método retorna o seguintes HRESULTs específicos, bem como o HRESULT erros que indicam falha de método.

HRESULT

Descrição

S_OK

O método foi concluído com êxito.

HOST_E_INVALIDOPERATION

O método foi chamado em um thread que não é o segmento atual.

Comentários

Chamar esse método incrementa o contador de anulação de thread de atraso para o segmento atual por um.

Chamadas para BeginPreventAsyncAbort e ICLRTask2::EndPreventAsyncAbort podem ser aninhados. Desde que o contador é maior que zero, atraso anulações de thread para o segmento atual. Se essa chamada não está emparelhada com uma chamada para o EndPreventAsyncAbort método, é possível alcançar um estado no qual thread anulações não podem ser entregue para a thread atual.

O atraso não é respeitado por um segmento que anula a mesmo.

A funcionalidade que é exposta por esse recurso é usada internamente pela máquina virtual (VM). Uso inadequado desses métodos pode causar um comportamento não especificado na VM. Por exemplo, chamando EndPreventAsyncAbort sem primeira chamada BeginPreventAsyncAbort foi possível definir o contador para zero quando a VM anteriormente foi incrementado proprietário. Da mesma forma, o contador interno não é verificado para estouro. Se ele exceder seu limite integral porque ele é incrementado por host e a VM, o comportamento resultante não for especificado.

Requisitos

Plataformas: Consulte Requisitos de sistema do .NET Framework.

Cabeçalho: MSCorEE.h

Biblioteca: Incluído como um recurso em mscoree

.NET Framework versões: 4

Consulte também

Referência

Método de ICLRTask2::EndPreventAsyncAbort

Interface de ICLRTask2

Interface de ICLRTaskManager

Interface de IHostTask

Interface de IHostTaskManager

Outros recursos

Interfaces de hospedagem.