Partager via


KsGateGetStateUnsafe, fonction (ks.h)

La fonction KsGateGetStateUnsafe retourne l’état de la porte donnée (ouverte ou fermée) de manière non sécurisée, c’est-à-dire sans tenir compte de la synchronisation.

Syntaxe

BOOLEAN KsGateGetStateUnsafe(
  [in] PKSGATE Gate
);

Paramètres

[in] Gate

Pointeur vers une structure KSGATE représentant la porte pour laquelle retourner l’état.

Valeur retournée

Cet appel retourne TRUE si la porte est ouverte et FALSE si la porte est fermée.

Remarques

Étant donné que KsGateGetStateUnsafe ne gère pas la synchronisation, il est possible d’obtenir un résultat qui n’est pas cohérent avec l’état de la porte si la porte est en transition intermédiaire d’un état à un autre au moment de l’appel.

Considérez une situation dans laquelle la sortie de la porte A est connectée en tant qu’entrée à la porte B. A passe à fermé, ce qui entraîne la transition de B d’ouvert à fermé. Si, en même temps, un autre thread appelle KsGateGetStateUnsafe entre le moment où A se ferme et le moment où B se ferme, la routine retourne toujours que B était ouvert.

KsGateGetStateUnsafe retourne si Gate-Count> est supérieur à zéro. Pour ce faire, la fonction n’utilise aucune fonction verrouillée. Par conséquent, l’appel est effectué sans tenir compte de la synchronisation.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Microsoft Windows XP et les systèmes d’exploitation ultérieurs et DirectX 8.0 et versions ultérieures de DirectX.
Plateforme cible Desktop (Expérience utilisateur)
En-tête ks.h (inclure Ks.h)
IRQL N’importe quel niveau