Click or drag to resize
InterlockedCompareExchangeT Method (T, T, T)
Compares two instances of the specified reference type T for equality and, if they are equal, replaces one of them.

Namespace: System.Threading
Assembly: mscorlib (in mscorlib.dll) Version: 4.0.0.0
Syntax
C#
public static T CompareExchange<T>(
	ref T location1,
	T value,
	T comparand
)
where T : class

Parameters

location1
Type: T
The destination, whose value is compared with comparand and possibly replaced. This is a reference parameter (ref in C#, ByRef in Visual Basic).
value
Type: T
The value that replaces the destination value if the comparison results in equality.
comparand
Type: T
The value that is compared to the value at location1.

Type Parameters

T
The type to be used for location1, value, and comparand. This type must be a reference type.

Return Value

Type: T
The original value in location1.
Exceptions
ExceptionCondition
NullReferenceExceptionThe address of location1 is a null pointer.
See Also