top | item 47102747

(no title)

foldr | 8 days ago

Not an expert, but can’t you get synchronization like this just by using release/acquire memory order with C11 atomic stores and loads?

discuss

order

jpc0|7 days ago

From my knowledge RCU/epoch/Hazard pointers are useful in data structures and algorithms where raw atomics cannot be used but you still nees lock free or in some cases wait free semantics.

If you can use an atomic then these are overkill and you should just be using an atomic, but many times things that are atomic does not make it lock free, if there's no hardware support the compiler will add a mutex.

jeffbee|8 days ago

Yes. But if you are tempted to do this in most cases you should just use a mutex anyway.