InterlockedExchange64-Funktion (winnt.h)
Legt eine 64-Bit-Variable auf den angegebenen Wert als atomischen Vorgang fest.
Um mit einer 16-Bit-Variablen zu arbeiten, verwenden Sie die Funktion InterlockedExchange16 .
Um mit einer 32-Bit-Variablen zu arbeiten, verwenden Sie die Funktion InterlockedExchange .
Syntax
LONG64 InterlockedExchange64(
[in, out] LONG64 volatile *Target,
[in] LONG64 Value
);
Parameter
[in, out] Target
Ein Zeiger auf den wert, der ausgetauscht werden soll. Die Funktion legt diese Variable auf Value fest und gibt ihren vorherigen Wert zurück.
[in] Value
Der Wert, der mit dem Wert ausgetauscht werden soll, auf den target verweist.
Rückgabewert
Die Funktion gibt den Anfangswert des Target-Parameters zurück.
Hinweise
Die ineinandergreifenden Funktionen bieten einen einfachen Mechanismus zum Synchronisieren des Zugriffs auf eine Variable, die von mehreren Threads gemeinsam genutzt wird. Diese Funktion ist in Bezug auf Aufrufe von anderen ineinandergreifenden Funktionen unteilbar.
Diese Funktion wird nach Möglichkeit mithilfe eines intrinsischen Compilers implementiert. Weitere Informationen finden Sie in der WinBase.h-Headerdatei und _InterlockedExchange64.
Diese Funktion generiert eine vollständige Speicherbarriere (oder einen Zaun), um sicherzustellen, dass Speichervorgänge in der richtigen Reihenfolge abgeschlossen werden.
Itanium-basierte Systeme: Verwenden Sie für leistungskritische Anwendungen stattdessen InterlockedExchangeAcquire64 .
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | winnt.h (windows.h einschließen) |
Weitere Informationen
Ineinandergreifen des Variablenzugriffs
InterlockedExchangePointerAcquire
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für