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