Methode ICLRTask2::BeginPreventAsyncAbort
Vertraagt aanvragen voor het afbreken van nieuwe threads, waardoor threads worden afgebroken op de huidige thread.
Syntax
HRESULT BeginPreventAsyncAbort();
Retourwaarde
Deze methode retourneert de volgende specifieke HRESULT's en HRESULT-fouten die wijzen op een fout in de methode.
HRESULT | Beschrijving |
---|---|
S_OK | De methode is voltooid. |
HOST_E_INVALIDOPERATION | De methode is aangeroepen voor een thread die niet de huidige thread is. |
Opmerkingen
Als u deze methode aanroept, wordt de teller delay-thread-abort voor de huidige thread met één verhoogd.
Aanroepen naar BeginPreventAsyncAbort
en ICLRTask2::EndPreventAsyncAbort kunnen worden genest. Zolang de teller groter is dan nul, worden threadafgebroken voor de huidige thread vertraagd. Als deze aanroep niet is gekoppeld aan een aanroep van de EndPreventAsyncAbort
methode, is het mogelijk om een status te bereiken waarin threadafgebroken verbindingen niet kunnen worden geleverd aan de huidige thread.
De vertraging wordt niet gehonoreerd voor een thread die zichzelf afbreekt.
De functionaliteit die door deze functie beschikbaar wordt gemaakt, wordt intern gebruikt door de virtuele machine (VM). Misbruik van deze methoden kan leiden tot niet-opgegeven gedrag in de VM. Als u bijvoorbeeld aanroept EndPreventAsyncAbort
zonder eerst aan te roepen BeginPreventAsyncAbort
, kan de teller op nul worden ingesteld wanneer de VM deze eerder heeft verhoogd. Op dezelfde manier wordt de interne teller niet gecontroleerd op overloop. Als de geïntegreerde limiet wordt overschreden omdat deze wordt verhoogd door zowel de host als de VM, is het resulterende gedrag niet opgegeven.
Vereisten
Platforms: Zie Systeemvereisten.
Header: MSCorEE.h
Bibliotheek: Opgenomen als een resource in MSCorEE.dll
.NET Framework versies: beschikbaar sinds 4