Quantcast
Channel: Use of infinite loop in AtomicInteger.addAndGet(int) - Stack Overflow
Browsing latest articles
Browse All 4 View Live

Answer by hahn for Use of infinite loop in AtomicInteger.addAndGet(int)

compareAndSet or just CAS relates to nonblocking thread-safe algorithms. The increment operation in case of addAndGet is fetching the old value, transform it to the new value and using CAS tries to set...

View Article



Answer by Tagir Valeev for Use of infinite loop in AtomicInteger.addAndGet(int)

This is a classical example of CAS loop. The compare-and-set is an atomic operation which has direct hardware support (usually there's some CPU instruction behind it). It atomically updates the given...

View Article

Answer by Vano for Use of infinite loop in AtomicInteger.addAndGet(int)

The motivation here is that you will eventuallyreturn next.Meaning that the condition :if (compareAndSet(current, next))Will be true at some iteration. It isn't known when exactly it will happen, so...

View Article

Use of infinite loop in AtomicInteger.addAndGet(int)

In Java's package java.util.concurrent.atomic AtomicInteger class has a method addAndGet(int)which ispublic final int addAndGet(int delta) { for (;;) { int current = get(); int next = current + delta;...

View Article
Browsing latest articles
Browse All 4 View Live




Latest Images