InterlockedCompareExchange 例程执行一个原子操作,用参数Comparand的值与参数Destination指针指向的值比较。
Syntax:
LONG InterlockedCompareExchange(
_Inout_ LONG volatile * Destination,
_In_ LONG Exchange,
_In_ LONG Comparand
);
Parameters:
Destination [in, out]
指向输入值的指针,和Comparand的值比较。
Exchange [in]
如果Destination指针指向的值和Comparand的值一样,就把Destination指针指向的值换成Exchange的值。
Comparand [in]指定与Destination 指针指向值比较的值。
Return value
返回*Destination的原始值。
Remarks
当Comparand 和*Destination相等时,*Destination的值设为Exchange 一样。否则,*Destination值不变。
Requirements
Header
Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h)
Library
OneCoreUAP.lib on Windows 10

InterlockedCompareExchange是Windows中的一种原子操作,用于比较并交换内存位置的值。该例程在Comparand与Destination指向的值相等时,将Destination的值更新为Exchange。返回值为Destination的原始值。适用于需要并发安全场景,常见于低级别库如Wdm.h。
最低0.47元/天 解锁文章
803

被折叠的 条评论
为什么被折叠?



