I was reading various posts about lazySet() method on AtomicInteger, which in-short denotes that visibility of the set value might not be immediately propagated to other threads (it is not a full barrier).
I ran a simple Demo, with multiple readers and one writer. readers periodically read value from AtomicInteger and the writer every 10 ms updates the value. I saw no distinguishable difference between lazySet() and set(). Is it due to x86 and strong coherency model? or sthe store buffers are simply quickly drained?