Condividi tramite


Funzione ExAcquireFastMutexUnsafe (wdm.h)

La routine ExAcquireFastMutexUnsafe acquisisce il mutex rapido specificato per il thread chiamante.

Sintassi

void ExAcquireFastMutexUnsafe(
  PFAST_MUTEX FastMutex
);

Parametri

FastMutex

[in, out] Puntatore a una struttura FAST_MUTEX) per cui il chiamante fornisce l'archiviazione. Il chiamante ha inizializzato in precedenza questa struttura tramite una chiamata alla routineexInitializeFastMutex

Valore restituito

Nessuno

Osservazioni

ExAcquireFastMutexUnsafe inserisce il chiamante in uno stato di attesa se il mutex rapido specificato non può essere acquisito immediatamente. In caso contrario, al chiamante viene assegnata la proprietà del mutex e l'accesso esclusivo alla risorsa che il mutex protegge fino a quando il chiamante non rilascia il mutex.

Qualsiasi mutex veloce acquisito da una chiamata a exAcquireFastMutexUnsafe deve essere rilasciato da una chiamata alla routineExReleaseFastMutexUnsafe.

Le routine ExAcquireFastMutex e ExAcquireFastMutexUnsafe causano il blocco del thread chiamante fino a quando non è disponibile il mutex. La routine ExTryToAcquireFastMutex restituisce immediatamente con valore restituito FALSE se un altro thread ha già acquisito il mutex. Sia exAcquireFastMutex che ExTryToAcquireFastMutex generare irQL per APC_LEVEL prima di acquisire il mutex veloce. I driver devono usare ExAcquireFastMutexUnsafe, che non genera IRQL, solo se uno dei seguenti è true:

Per altre informazioni sui mutex veloci, vedere gli argomenti seguenti:

mutex veloci e mutex sorvegliati

blocchi, deadlock e di sincronizzazione

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000
intestazione wdm.h
IRQL APC_LEVEL
regole di conformità DDI HwStorPortProhibitedDDIs(storport)

Vedere anche

ExAcquireFastMutex

ExInitializeFastMutex

exReleaseFastMutexUnsafe

exTryToAcquireFastMutex

FAST_MUTEX

FsRtlEnterFileSystem

KeEnterCriticalRegion

KeLeaveCriticalRegion