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.
La funzione KsGateGetStateUnsafe restituisce lo stato del gate specificato (aperto o chiuso) in modo non sicuro, ovvero indipendentemente dalla sincronizzazione.
Sintassi
BOOLEAN KsGateGetStateUnsafe(
[in] PKSGATE Gate
);
Parametri
[in] Gate
Puntatore a una struttura KSGATE che rappresenta il gate per il quale restituire lo stato.
Valore restituito
Questa chiamata restituisce true se il cancello è aperto e FALSE se il cancello è chiuso.
Osservazioni
Poiché KsGateGetStateUnsafe non gestisce la sincronizzazione, è possibile ottenere un risultato che non è coerente con lo stato del gate se il gate è in transizione intermedia da uno stato a un altro al momento della chiamata.
Si consideri una situazione in cui l'output del gate A è connesso come input al gate B. Una transizione a chiusa, causando la transizione da aperta a chiusa. Se, allo stesso tempo, un altro thread chiama KsGateGetStateUnsafe tra la chiusura di A e l'ora di chiusura di B, la routine restituisce comunque che B era aperto.
KsGateGetStateUnsafe restituisce se Gate->Count è maggiore di zero. La funzione non usa alcuna funzione interlocked per eseguire questa operazione. Pertanto, la chiamata viene eseguita senza riguardo alla sincronizzazione.
Fabbisogno
| Requisito | Valore |
|---|---|
| client minimo supportato | Disponibile in Microsoft Windows XP e nei sistemi operativi successivi e in DirectX 8.0 e versioni successive di DirectX. |
| piattaforma di destinazione | Desktop |
| intestazione | ks.h (include Ks.h) |
| IRQL | Qualsiasi livello |