Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Atrasa os novos pedidos de cancelamento de threads resultantes de abortar threads no thread atual.
Syntax
HRESULT BeginPreventAsyncAbort();
Devolver Valor
Este método devolve os seguintes HRESULTs específicos, bem como erros HRESULT que indicam a falha do método.
| HRESULT | Description |
|---|---|
| S_OK | O método foi concluído com êxito. |
| HOST_E_INVALIDOPERATION | O método foi chamado num thread que não é o thread atual. |
Observações
Chamar este método incrementa o contador delay-thread-abort para o thread atual por um.
As chamadas para BeginPreventAsyncAbort e ICLRTask2::EndPreventAsyncAbort podem ser aninhadas. Desde que o contador seja maior do que zero, os cancelamentos de threads para o thread atual são atrasados. Se esta chamada não estiver emparelhada com uma chamada para o EndPreventAsyncAbort método , é possível alcançar um estado em que os cancelamentos de threads não podem ser entregues no thread atual.
O atraso não é respeitado por um tópico que aborta a si mesmo.
A funcionalidade exposta por esta funcionalidade é utilizada internamente pela máquina virtual (VM). A utilização indevida destes métodos pode causar comportamentos não especificados na VM. Por exemplo, chamar EndPreventAsyncAbort sem a primeira chamada BeginPreventAsyncAbort pode definir o contador como zero quando a VM a incrementou anteriormente. Da mesma forma, o contador interno não está verificado para capacidade excedida. Se exceder o limite integral porque é incrementado pelo anfitrião e pela VM, o comportamento resultante não é especificado.
Requisitos
Plataformas: Veja Requisitos de Sistema.
Cabeçalho: MSCorEE.h
Biblioteca: Incluído como um recurso no MSCorEE.dll
.NET Framework Versões: Disponível desde 4