专业的编程技术博客社区

网站首页 > 博客文章 正文

java的原子操作和原子操作的好处(java原子类的使用场景)

baijin 2024-09-26 06:59:32 博客文章 3 ℃ 0 评论

原子操作的例子

AtomicIntegerincrementAndGet()方法等价于++count,并是原子操作;

AtomicIntegergetAndIncrement()方法等价于count++,并是原子操作。

原子操作的好处

首先,不会忘了在正确的时候获取锁。

其次,由于没有锁的参与,对原子变量的操作不会引发死锁。

最后,原子变量是无锁(lock-free)非阻塞(non-blocking)算法的基础,这种算法可以不用锁和阻塞来达到同步的目的。无锁的代码比起有锁的代码更为复杂。java.util.concurrent包中的类都尽量使用了无锁的代码,使用户在一定程度上免于亲自实现。

volatile变量

将Java变量标记成volatile,可以保证变量的读写不被乱序执行。

volatile是一种低级形式的同步。将变量标记成volatile并不能保证变量的++操作是原子的。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表