News for hackers. Stuff that matters.
Re:Common Multithreading Mistakes in C# – Unsafe Assumptions by Sharlin on Wednesday February 22, 2017 @10:04AM (#13705984)
> That said I have seen several incorrect and unnecessary `CompareExchange` usages that could have been avoided with a simple lock...

This is, obviously, the answer to the GP's question.

Re:Common Multithreading Mistakes in C# – Unsafe Assumptions by TillE on Wednesday February 22, 2017 @01:23PM (#13707754)
That's no reason for avoiding atomics in simple use cases. "Use locks and then profile" is fairly bad advice. Forget the profiler and always use atomics in simple situations where you know exactly how they work. Just don't try anything complicated with them.