
Java并发
文章平均质量分 92
程序员不相信秃头
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
缓存一致性问题
一、为什么会产生缓存不一致问题 1、CPU缓存 目的:CPU缓存的出现主要是为了解决CPU运算速度与内存读写速度不匹配的矛盾 因为CPU运算速度要比内存读写速度快得多,这种访问速度的显著差异,导致CPU可能会花费很长时间等待数据到来或把数据写入内存。基于此,现在CPU大多数情况下读写都不会直接访问内存(CPU都没有连接到内存的管脚),取而代之的是CPU缓存,CPU缓存是位于CPU与内存之间的临时存储器,它的容量比内存小得多但是交换速度却比内存快得多。而缓存中的数据是内存中的一小部分数据,但这一小部分原创 2021-09-06 16:04:17 · 1196 阅读 · 0 评论 -
CAS机制专篇,超详细讲解!(比较与交换,compareAndSwap,CAS原理,Unsafe是什么?valueOffset是什么?CAS的缺点,CAS的应用场景,ABA问题,ABA问题的解决办法)
CAS专篇 前言 日常编码过程中,基本不会直接用到 CAS 操作,都是通过一些JDK 封装好的并发工具类来使用的,在 java.util.concurrent 包下。但是面试时 CAS 还是个高频考点,所以呀,你还不得不硬着头皮去死磕一下这块的技能点,总比一问三不知强吧? 一、为什么要用无锁? 我们一想到在多线程下保证安全的方式头一个要拎出来的肯定是锁,不管从硬件、操作系统层面都或多或少在使用锁。锁有什么缺点吗?当然有了,不然 JDK 里为什么出现那么多各式各样的锁,就是因为每一种锁都有其优劣势原创 2021-07-18 18:11:21 · 2153 阅读 · 1 评论