AtomicInteger的嵌套方法调用在java中也是原子的吗
这个操作是原子的还是有可能在两者之间发生数据竞争AtomicInteger的嵌套方法调用在java中也是原子的吗,java,multithreading,atomicity,java-5,Java,Multithreading,Atomicity,Java 5,这个操作是原子的还是有可能在两者之间发生数据竞争 atomicInteger.set(-atomicInteger.get()); 如果存在数据竞争,如何以原子方式否定一个原子整数?不,我想您需要同步来锁定实例 AtomicInteger有很多方法可以获取和设置,但是没有什么方法可以做 很明显,这是以前问过的,因此该页面上的解决方案很有趣。不,我想您需要同步来锁定实例 public final int getAndDecrement() AtomicInteger有很多方法可以获取和设置,但
atomicInteger.set(-atomicInteger.get());
如果存在数据竞争,如何以原子方式否定一个
原子整数?不,我想您需要同步来锁定实例
AtomicInteger有很多方法可以获取和设置,但是没有什么方法可以做
很明显,这是以前问过的,因此该页面上的解决方案很有趣。不,我想您需要同步来锁定实例
public final int getAndDecrement()
AtomicInteger有很多方法可以获取和设置,但是没有什么方法可以做
显然,这是以前问过的,因此该页面上的解决方案很有趣
public final int getAndDecrement()
原子地将当前值递减1。返回上一个值
AtomicInteger itsCounter = new AtomicInteger();
itsCounter.getAndDecrement();
原子地将当前值递减1。返回上一个值
AtomicInteger itsCounter = new AtomicInteger();
itsCounter.getAndDecrement();
我会这样做的
public int getAndNegate(AtomicInteger i) {
for (;;) {
int current = i.get();
int next = -current;
if (i.compareAndSet(current, next))
return current;
}
}
我会这样做的
public int getAndNegate(AtomicInteger i) {
for (;;) {
int current = i.get();
int next = -current;
if (i.compareAndSet(current, next))
return current;
}
}
不那不行。见不到;那不行。看到了吗,谢谢,但我实际上是在问关于否定和不减少价值的问题谢谢,但我实际上是在问关于否定和不减少价值的问题