VideoPortInterlockedExchange-Funktion (video.h)
Die VideoPortInterlockedExchange Funktionssperren oder entsperrt einen Speicherblock, indem eine benutzerdefinierte Sperrvariable auf TRUE oder FALSE-festgelegt wird. Sie gibt den zuvor gehaltenen Wert der Sperrvariable zurück.
Syntax
VIDEOPORT_API LONG VideoPortInterlockedExchange(
[in, out] IN OUT PLONG Target,
[in] IN LONG Value
);
Parameter
[in, out] Target
Zeiger auf eine benutzerdefinierte Sperrvariable, die zum Steuern des Zugriffs auf einen Speicherpuffer verwendet wird.
[in] Value
Gibt den Wert an, der in Targetgespeichert werden soll, was angibt, ob der Speicherpuffer gesperrt oder entsperrt werden soll. Verwenden Sie TRUE-, um den Speicherpuffer zu sperren, und FALSE-, um den Speicherpuffer zu entsperren.
Rückgabewert
VideoPortInterlockedExchange gibt den Wert zurück, den Target vor dem Funktionsaufruf hatte.
Bemerkungen
VideoPortInterlockedExchange- kann verwendet werden, um die DMA-Gemeinsame Pufferverknügung in mehreren Prozessorsystemen zu verhindern.
Wenn der Puffer nicht ausgelesen oder in den geschrieben wird, sollte die Sperrvariable einen Wert von FALSEaufweisen. Ein anschließender Aufruf von VideoPortInterlockedExchange mit dem Target Parameter, der auf TRUE festgelegt ist, setzt die Sperrvariable auf TRUE-zurück, nach der diese Funktion FALSE-zurückgibt. Der Puffer ist jetzt gesperrt und verhindert den Zugriff durch andere Threads. Wenn die aktuellen Vorgänge für den Puffer abgeschlossen sind, entsperren Sie den Puffer mit einem Aufruf von VideoPortInterlockedExchange, wobei der parameter Target auf FALSE-festgelegt ist.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar in Windows 2000 und höheren Versionen von Windows-Betriebssystemen. |
Zielplattform- | Desktop |
Header- | video.h (video.h einschließen) |
Library | Videoprt.lib |
DLL- | Videoprt.sys |
IRQL- | Beliebige Ebene |