并发
文章平均质量分 95
Sadness°
熟悉Java语言;熟悉SQL及索引原理;熟悉SSM、SpringBoot、SpringCloud框架、JVM、并发编程及高并发处理。
展开
-
并发的三大特性与单例模式
目录三大特性volatile指令重排及原理DCL(Double Check Lock)happens-before原则单例模式饿汉式单例模式枚举单例模式懒汉式单例模式DCL懒汉式单例模式静态内部类 三大特性 可见性、有序性、原子性 volatile volatile是Java虚拟机提供的轻量级的同步机制,能保证可见性和有序性(禁止指令重排),但不能保证原子性 写屏障: 保证在该屏障之前的所有对共享变量的改动,都同步到主内存中; 保证指令重排序时,不会将该屏障之前的代码排在该屏障之后 读屏障: 保证在该原创 2021-03-20 17:39:39 · 216 阅读 · 0 评论 -
synchronized原理及锁升级
写在前面:大部分图片截自黑马某教程,如有侵权,请务必告知 目录对象头Monitor监视器(重量级锁)轻量级锁锁膨胀自旋优化(只针对多核CPU)偏向锁wait与notify原理park()与unpark()原理(底层是Unsafe类的方法)死锁与活锁 对象头 (以32位虚拟机为例) 普通对象 数组对象 对象头包含以下信息:运行时元数据markword、类型指针、如果是数组对象还会包含数组长度 markword结构(这里是64位虚拟机) markword中主要包含以下信息:锁的状态标志(如偏向锁、无锁原创 2021-03-20 17:10:07 · 254 阅读 · 0 评论