什么是LongAdder
发表于:2024-11-30 作者:千家信息网编辑
千家信息网最后更新 2024年11月30日,本篇文章为大家展示了什么是LongAdder,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。可以说LongAdder是以空间换时间的方式来弥补AtomicLon
千家信息网最后更新 2024年11月30日什么是LongAdder
本篇文章为大家展示了什么是LongAdder,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
可以说LongAdder是以空间换时间的方式来弥补AtomicLong的瓶颈问题。
LongAdder的基本思路就是分散热点,在AtomicLong中无论多少个线程都是对一个value进行累加,而在LongAdder中除了维护了一个value(volatile long base)值,还维护了一个数组。
transient volatile Cell[] cells; @sun.misc.Contended static final class Cell { volatile long value; Cell(long x) { value = x; } final boolean cas(long cmp, long val) { return UNSAFE.compareAndSwapLong(this, valueOffset, cmp, val); }}
虽然这个数组是间接维护的但是这不是重点,我们重点要知道这个数组中也维护了一个value值,目的很简单就是为了累加用的;
不同的线程会命中到数组的不同槽中,各个线程只对自己槽内的那个value进行CAS操作,这样就达到了热点分散的目的;
当并发不高的时候通过CAS直接操作base值,当并发高的时候CASbase有可能会失败,失败之后则会对Cell[]数组中的Cell[i]中的value进行CAS操作进行加1。
上述内容就是什么是LongAdder,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。
数组
就是
线程
不同
内容
技能
时候
热点
目的
知识
重点
简明
简明扼要
这不
思路
文章
方式
时间
更多
瓶颈
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器不做raid可以吗
医药系统管理软件开发
基于图片提取人体数据库
网络安全宣传周在几月
网络安全与现代技术
discuz 回复数据库
梦幻西游小米版服务器
教师线上教学网络技术培训方案
中文学位数据库是什么
数据库属于哪一类大类
西安小程序软件开发
想从事网络安全入门
腐蚀星魂在哪个服务器
数据库的安全威胁包含
计算机网络技术协议三要素
42岁软件开发岗转售前工程
湖北正规网络技术咨询报价
深圳嵌入式软件开发培训机构
ibm服务器机
fm2020 编辑数据库
db2数据库学习
网安开展网络安全进校园宣传
h3c杯网络技术大赛
什么是电机驱动软件开发
吴桥软件开发系统
软件开发文档工具
远程服务器切回页面
网络安全工作自评报告
软件开发者必学
邹平erp软件开发定制