![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机
skw1028142506
这个作者很懒,什么都没留下…
展开
-
多线程:synchronized的底层实现原理及锁的升级
1、synchronized的使用a)普通同步方法,锁的是当前实例对象b)静态同步方法,锁的是当前类对象c)同步方法块,锁的是Synchronized括号中配置的对象当一个对象需要方法同步方法或代码块时,需要获取锁,退出或者抛出异常时,必须释放锁2 Synchronized底层实现JVM基于进入和退出Monitor对象来实现方法同步和代码块的同步,但是两者的实现细节不同。代码块同步...原创 2020-03-05 22:02:36 · 135 阅读 · 0 评论 -
spring源码深入阅读分析---环境搭建(二)
spring源码阅读环境搭建一、我的环境1、系统版本MacOS 10.15.22、开发版本工具spring-framework-5.0.x.RELEASEgradle4.9jdk1.8.0_121IntelliJ IDEA 2019假设以上软件都已安装完成。二、源码下载1、地址https://github.com/spring-projects/spring-framewo...原创 2020-01-09 23:11:16 · 136 阅读 · 0 评论 -
spring源码深入阅读分析--XmlBeanDefinitionReader(三)
XmlBeanDefinitionReader读取xml配置文件XmlBeanFactory对DefaultListableBeanFactory进行了扩展,主要是对xml配置文件的读取得到BeanDefinition,对bean的注册和获取,主要是通过继承父类DefaultListableBeanFactory的方法,唯独与父类不同的是,增加了个性化属性XmlBeanDefinitionRea...原创 2020-01-09 22:54:54 · 189 阅读 · 0 评论 -
spring源码分析(一)
spring容器的实现继承关系每一个类在bean实例化中的作用:1、AlisaRegistry:对alias得简单增删改查等操作2、SimpleAliasRegistry:主要使用map作为alias的缓存,并对接口AliasRegistry功能实现;3、SingletonBeanRegistry:单例的注册及获取4、banFactory:获取bean及bean的各种属性,如bean的...原创 2020-01-06 23:31:00 · 117 阅读 · 0 评论 -
java 中的几种单例模式形式
java 中的几种单例模式形式1、饿汉单例形式2、懒汉单例(线程不安全)3、懒汉单例(对方法加锁)4、懒汉单例(双重检测)此方法还是存在问题,new 一个对象一共有三步1、为对象分配内存空间2、调用对象的构造函数,并对对象进行属性赋值3、将对象指向分配的内存jvm会对这三条指令进行重排,当将2、3进行了重排时,线程1先执行的指令3,然后执行指令2,此时,cup切换到线程...原创 2019-12-10 10:01:50 · 106 阅读 · 0 评论