- 博客(5)
- 收藏
- 关注
原创 Spring推断构造方法结合源码情况分析
Spring推断构造方法源码Constructor<?>[] ctors = determineConstructorsFromBeanPostProcessors(beanClass, beanName); // 通过BeanPostProcessor找出了构造方法 // 或者BeanDefinition的autowire属性为AUTOWIRE_CONSTRUCTOR // 或者BeanDefinition中指定了构造方法参数值 // 或者在getBean()时指定了arg
2021-05-06 19:05:32 115 1
原创 redisson分布式锁实现原理
redisson实现小demo根据redisson实现原理,整一个商品库存小demo,解决高并发情况下的商品库存多卖问题。 @RequestMapping("/deduct_stock") public String deductStock() { String lock="lockKey"; String threadId = UUID.randomUUID().toString(); try { Boolean result
2021-04-22 20:10:13 142 1
原创 Springboot源码学习(一)Bean生命周期
Springboot核心概念BeanDefinition在springboot中定义Bean的几种方式首先是声明式的:bean标签xml@Bean注解@Compent(@Service,@Controller等)编程式,创建BD然后注册Bean//new 一个BDAbstractBeanDefinition beanDefinition = BeanDefinitionBuilder.genericBeanDefinition().getBeanDefinition();// 当前B
2021-04-13 19:28:56 204
原创 AQS-ReentrantLock公平与非公平
ReentrantLock-公平锁公平性当线程CAS失败之后会进入Node双链表的阻塞队列中,Node大概结构如下:thread:线程waitestate节点的生命状态:信号量SIGNAL = -1 //可被唤醒CANCELLED = 1 //代表出现异常,中断引起的,需要废弃结束CONDITION = -2 // 条件等待PROPAGATE = -3 // 传播0 - 初始状态Init状态一个Head头,一个Tail尾部,这两个节点thread均为空需要注意head.waitSta
2021-04-08 18:11:28 114 1
原创 Synchronized原理
synchronized原理剖析synchronized基本介绍Synchronized基本使用Synchronized底层原理剖析同步器底层原理JDK1.5之前管程:JDK1.5之后monitor?monitor数据结构锁膨胀升级(简易版)各种锁偏向锁轻量级锁自旋锁锁消除逃逸分析synchronized基本介绍Synchronized基本使用1、同步实例方法,锁是当前实例对象2、同步类方法,锁是当前类对象3、同步代码块,锁是括号里面的对象Synchronized底层原理剖析同步器多线
2021-04-04 19:55:34 263 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人