源码
Crystal_Mria
一个普通的小小程序员,我的心愿是--世界和平。
展开
-
Spring 循环依赖
@Test public void testAOP() { ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:applicationContext.xml"); LagouAopBean lagouBean = applicationContext.getBean(LagouAopBean.class); lagouBean.print(); }1 Abstract.原创 2020-12-01 15:02:07 · 210 阅读 · 0 评论 -
ReentrantLock 和AQS
抽象队列同步器,通过一个int类型变量表示持有锁的状态。state + FIFO队列(head、tail、node(waitStatus,Thread,prev,next))AQS使用一个volatile的int 类型的成员变量来表示同步状态,通过内置的FIFO队列来完成资源获取的排队工作,将每条要去抢占资源的线程封装成一个node节点来实现锁的分配,通过CAS完成对state值的修改Lock.lock()解析...原创 2020-11-30 17:01:25 · 120 阅读 · 0 评论 -
Spring循环依赖源码解析
Spring循环依赖场景有构造器循环依赖(不可解决),set注入循环依赖(单例可以解决)。解决大概逻辑主要代码public class LagouBean implements InitializingBean, ApplicationContextAware { private ItBean itBean; public void setItBean(ItBean itBean) { System.out.println("setItBea.........."); this.itB原创 2020-09-16 16:52:46 · 319 阅读 · 0 评论