Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Notifica all'host che il codice gestito sta immettendo un periodo in cui l'attività corrente non deve essere spostata in un altro thread del sistema operativo.
Sintassi
HRESULT BeginThreadAffinity ();
Valore restituito
| HRESULT | Descrizione |
|---|---|
| S_OK |
BeginThreadAffinity 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 in genere chiama IHostTaskManager::BeginThreadAffinity nel contesto di una chiamata a Thread.BeginThreadAffinity. L'attività corrente non deve essere riprogrammata finché non viene effettuata una chiamata corrispondente a IHostTaskManager::EndThreadAffinity. Le attività possono essere disattivate, ma quando sono tornate, devono essere assegnate allo stesso thread del sistema operativo da cui sono stati spostati. Le chiamate annidate non BeginThreadAffinity hanno alcun effetto, perché la chiamata fa riferimento all'attività corrente.
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