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