Reference

InterlockedCompareExchange(3w)

NAME

InterlockedCompareExchange (KERNEL32.@)

SYNOPSIS

LONG InterlockedCompareExchange
(
LONG volatile* dest,
LONG xchg,
LONG compare
)

DESCRIPTION

Atomically swap one value with another.

PARAMS

dest [In/Out] The value to replace.

xchq [In] The value to be swapped.

compare [In] The value to compare to dest.

RETURNS

The resulting value of dest.

NOTES

dest is updated only if it is equal to compare, otherwise no swap is done.

IMPLEMENTATION

Defined in "winbase.h".

Implemented in "dlls/kernel32/sync.c".

Debug channel "sync".

History