Atomically sets a 32-bit value and return its previous contents.

Syntax

#include <pratom.h>

PRInt32 PR_AtomicSet(
  PRInt32 *val,
  PRInt32 newval);

Parameters

The function has the following parameter:

val
A pointer to the value to be set.
newval
The new value to assign to the val parameter.

Returns

The function returns the prior value of the referenced variable.

Description

PR_AtomicSet first reads the value of var, then updates it with the supplied value. The returned value is the value that was readbefore memory was updated. The memory modification is unconditional--that is, it isn't a test and set operation.