Metodo IHostGCManager::ThreadIsBlockingForSuspension
Notifica all'host che il thread da cui è stata effettuata la chiamata al metodo sta per bloccare un'operazione di Garbage Collection.
Sintassi
HRESULT ThreadIsBlockingForSuspension ();
Valore restituito
HRESULT | Descrizione |
---|---|
S_OK | ThreadIsBlockingForSuspension restituito correttamente. |
HOST_E_CLRNOTAVAILABLE | Common Language Runtime (CLR) non è stato caricato in un processo oppure CLR si trova in uno stato in cui non è possibile eseguire codice gestito o elaborare correttamente la chiamata. |
HOST_E_TIMEOUT | Timeout della chiamata. |
HOST_E_NOT_OWNER | Il chiamante non possiede il blocco. |
HOST_E_ABANDONED | Un evento è stato annullato durante l'attesa di un thread o di una fibra bloccata. |
E_FAIL | Si è verificato un errore irreversibile sconosciuto. Quando un metodo restituisce E_FAIL, CLR non è più utilizzabile all'interno del processo. Le chiamate successive ai metodi di hosting restituiscono HOST_E_CLRNOTAVAILABLE. |
Commenti
CLR chiama in genere il ThreadIsBlockForSuspension
metodo in preparazione di un'operazione di Garbage Collection per consentire all'host di riprogrammare il thread per le attività non gestite.
Importante
L'host può riprogrammare le attività solo dopo una chiamata a ThreadIsBlockingForSuspension
. Dopo che il runtime chiama SuspensionStarting, l'host non deve riprogrammare un'attività.
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: MSCorEE.h
Libreria: Incluso come risorsa in MSCorEE.dll
Versioni di .NET Framework: Disponibile dalla versione 2.0