并发-锁基础知识

1. 为什么要用锁

锁是为了解决并发操作引起的脏读、数据不一致问题

2. 锁生命周期

3. CPU模型

 

L1、L2、L3分别表示一级缓存、二级缓存、三级缓存,越靠近CPU的缓存,速度越快,容量也越小。所以L1缓存很小但很快,并且紧靠着在使用它的CPU内核;L2大一些,也慢一些,并且仍然只能被一个单独的CPU核使用;L3更大、更慢,并且被单个插槽上的所有CPU核共享;最后是主存,由全部插槽上的所有CPU核共享。

PS: CPU访问不同层级数据的概念

 

4. Java内存模型

线程之间的共享变量存在主内存之中,每个线程都有一个私有的本地内存,本地内存存储了该线程以读/写共享变量的副本。本地内存是JAVA内存模型的一个抽象概念,并不真实存在。

它涵盖了缓存、写缓存区以及其他硬件以及编码器的优化。

参考资料

i++和++i是否为原子操作?怎么确保原子性

多线程面试题(值得收藏)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值