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, qui est 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 de retour

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 à l’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. Transitions vers fermées, ce qui entraîne la transition de B de l’ouverture à la fermeture. Si, en même temps, un autre thread appelle KsGateGetStateUnsafe entre le moment où A se ferme et l’heure de fermeture de B, la routine retourne toujours que B a été ouverte.

KsGateGetStateUnsafe retourne si Gate->Count est supérieur à zéro. La fonction n’utilise aucune fonction interblocée pour effectuer cette opération. Ainsi, l’appel est effectué sans tenir compte de la synchronisation.

Exigences

Exigence Valeur
client minimum 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 Bureau
d’en-tête ks.h (include Ks.h)
IRQL N’importe quel niveau