T location1 = v1;
T value = v2;
T res = Interlocked.CompareExchange(ref location1, value, conparand)
=
if(location1 == conparand){
res = location1;
location1 = value;
}
else{
res = location1;
}
T location1 = v1;
T value = v2;
T res = Interlocked.CompareExchange(ref location1, value, conparand)
=
if(location1 == conparand){
res = location1;
location1 = value;
}
else{
res = location1;
}