Condividi tramite


Metodo ICLRTask2::EndPreventAsyncAbort

Consente alle richieste di interruzione di thread, siano esse nuove o in sospeso, di comportare interruzioni nel thread corrente.

HRESULT EndPreventAsyncAbort();

Valore restituito

Questo metodo restituisce gli HRESULT specifici seguenti nonché gli errori HRESULT che indicano l'esito negativo del metodo.

HRESULT

Descrizione

S_OK

Il metodo è stato eseguito correttamente.

HOST_E_INVALIDOPERATION

Il metodo è stato chiamato su un thread che non è il thread corrente.

Note

La chiamata di questo metodo decrementa di uno il contatore di ritardo di interruzione del thread corrente.

Le chiamate di ICLRTask2::BeginPreventAsyncAbort e EndPreventAsyncAbort possono essere annidate. Finché il contatore è maggiore di zero, le interruzioni del thread corrente vengono ritardate.

Le funzioni esposte da questa funzionalità sono utilizzate internamente dalla macchina virtuale (VM, Virtual Machine). L'utilizzo improprio di questi metodi può provocare comportamenti imprevisti nella VM. Ad esempio, se si chiama EndPreventAsyncAbort senza prima chiamare BeginPreventAsyncAbort è possibile che il contatore venga impostato su zero quando la VM l'ha incrementato in precedenza. Analogamente, per il contatore interno non viene eseguita alcuna verifica di overflow. Se tale contatore supera il proprio limite integrale poiché viene incrementato sia dall'host sia dalla VM, il comportamento risultante è imprevedibile.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: MSCorEE.h

Libreria: inclusa come risorsa in MSCorEE.dll

Versioni di .NET Framework: 4

Vedere anche

Riferimenti

Metodo ICLRTask2::BeginPreventAsyncAbort

Interfaccia ICLRTask2

Interfaccia ICLRTaskManager

Interfaccia IHostTask

Interfaccia IHostTaskManager

Altre risorse

Interfacce di hosting