Condividi tramite


Metodo IHostSyncManager::CreateCrstWithSpinCount

Crea un oggetto sezione critica con il numero di iterazioni cicliche per la sincronizzazione.

HRESULT CreateCrstWithSpinCount (
    [in]  DWORD dwSpinCount,
    [out] IHostCrst** ppCrst
);

Parametri

  • dwSpinCount
    [in] Specifica il numero di iterazioni cicliche per l'oggetto sezione critica.

  • ppCrst
    [out] Puntatore all'indirizzo di un'istanza di IHostCrst oppure null se non è stato possibile creare la sezione critica.

Valore restituito

HRESULT

Oggetto di descrizione

S_OK

CreateCrstWithSpinCount ha restituito correttamente un valore.

HOST_E_CLRNOTAVAILABLE

Common Language Runtime non è stato caricato in un processo oppure si trova in uno stato in cui non è possibile eseguire codice gestito né elaborare correttamente la chiamata.

HOST_E_TIMEOUT

Timeout della chiamata.

HOST_E_NOT_OWNER

Il chiamante non è il proprietario del blocco.

HOST_E_ABANDONED

Un evento è stato annullato mentre un thread o un fiber bloccato era in attesa di tale evento.

E_FAIL

Si è verificato un errore irreversibile sconosciuto. Se un metodo restituisce E_FAIL, CLR non sarà più utilizzabile all'interno del processo. Le successive chiamate ai metodi di hosting restituiranno HOST_E_CLRNOTAVAILABLE.

E_OUTOFMEMORY

Memoria insufficiente per la creazione della sezione critica richiesta.

Note

Il numero di iterazioni cicliche viene utilizzato solo su un sistema multiprocessore. Tale numero specifica quante volte un thread chiamante deve effettuare un'iterazione ciclica prima di eseguire un'operazione di attesa su un semaforo associato a una sezione critica non disponibile. Se la sezione critica diventa disponibile durante l'esecuzione dei cicli, il thread chiamante ignora l'operazione di attesa. CreateCrstWithSpinCount si comporta in modo identico alla funzione Win32 InitializeCriticalSectionAndSpinCount.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: MSCorEE.h

Libreria: inclusa come risorsa in MSCorEE.dll

Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vedere anche

Riferimenti

Interfaccia ICLRSyncManager

Interfaccia IHostSemaphore

Interfaccia IHostSyncManager