科技报道|一次性搞清楚,Java并发编程在各主流框架中的应用,保证看懂( 七 )
- LinkedBlockingQueue
- PriorityBlockingQueue
CAS 指令和原子类(应用比较多的就是计数器)互斥同步最主要的问题就是进行线程阻塞和唤醒所带来的性能的额外损耗 , 因此这种同步被称为阻塞同步 , 它属于一种悲观的并发策略 , 我们称之为悲观锁 。 随着硬件和操作系统指令集的发展和优化 , 产生了非阻塞同步 , 被称为乐观锁 。 简单地说 , 就是先进行操作 , 操作完成之后再判断操作是否成功 , 是否有并发问题 , 如果有则进行失败补偿 , 如果没有就算操作成功 , 这样就从根本上避免了同步锁的弊端 。
目前 , 在 Java 中应用最广泛的非阻塞同步就是 CAS 。 从 JDK1.5 以后 , 可以使用 CAS 操作 , 该操作由 sun.misc.Unsafe 类里的 compareAndSwapInt() 和 compareAndSwapLong() 等方法实现 。 通常情况下 sun.misc.Unsafe 类 对于开发者是不可见的 , 因此 , JDK 提供了很多 CAS 包装类 简化开发者的使用 , 如 AtomicInteger 。 使用 Java 自带的 Atomic 原子类 , 可以避免同步锁带来的并发访问性能降低的问题 , 减少犯错的机会 。
全文完!
作者:yanglbme
转自自:
推荐阅读
- 所持股份|万兴科技:公司控股股东、实际控制人吴太兵质押150万股
- 发布公告|数量过半!博创科技:天通股份累计减持约150万股
- 英雄科技聊数码|蔡崇信有实力买下篮网,那身价3200亿的马云,能买下几支NBA球队
- 光明网|多几个角度看待“集中清退研究生”
- 前沿军事报道|普京4个字回应十分解气,中俄率先突破!美国要求疫苗必须无偿供应
- 科技前沿阵地|涨疯了!海思安防芯片遭哄抬“围剿”
- 月影浓|吴亦凡机械造型走秀 垫肩披风搭银框眼镜科技感足
- 中国历史发展过程|中国历史发展过程.中国的科技史界过去半个多世纪
- 天津|桂发祥:不再持有昆汀科技股份
- 消费|减持!天通股份:减持博创科技约32万股
