摘要: JDK1.8 Hashmap JDK1.8 ConcurrentHashMap 参考 http://www.importnew.com/28263.html 和 JDK1.8 HashMap, ConcurrentHashMap 源代码 阅读全文
posted @ 2019-04-01 22:47 webglcn 阅读(139) 评论(0) 推荐(0) 编辑
摘要: CAS -> unsafe -> CAS底层思想 -> ABA --> 原子引用更新 --> 如何规避ABA CAS compareAndSwap 原理 CAS(V,E,N) V表示要更新的变量(内存值) E表示预期值 N表示新值 (当前值和底层值一样时候,才更新) 传入的值是工作内存,底层的值是主 阅读全文
posted @ 2019-04-01 21:57 webglcn 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 一 cpu个数、核数、线程数的关系 cpu个数:是指物理上,也及硬件上的核心数; 核数:是逻辑上的,简单理解为逻辑上模拟出的核心数;一个CPU核心数模拟出2线程的CPU 线程数:是同一时刻设备能并行执行的程序个数,线程数=cpu个数 * 核数,及程数=cpu个数(2) * 核数(2)=4 Windo 阅读全文
posted @ 2019-04-01 21:23 webglcn 阅读(4708) 评论(0) 推荐(1) 编辑
摘要: JDK8 推荐 LongAdder替代 AtomicInteger, AtomicInteger内部是实现使用 (网友使用jad反编译源码 参考 http://ifeve.com/enhanced-cas-in-jdk8/),高并发场景compareAndSwapInt 会不断的试错,有性能问题。 阅读全文
posted @ 2019-04-01 20:28 webglcn 阅读(358) 评论(0) 推荐(0) 编辑