加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

Synchronized锁在Spring事宜打点下,为啥还线程不安详?

发布时间:2019-03-16 03:02:32 所属栏目:建站 来源:Java3y
导读:媒介 只有秃顶才气变强。 文本已收录至我的GitHub客栈,接待Star:https://github.com/ZhongFuCheng3y/3y 伴侣问了我一个技能的题目(伴侣其实是勤学,服气!) 该题目来历知乎(synchronized锁题目): https://www.zhihu.com/question/277812143 开启10000个

我们知道Spring事宜的底层是Spring AOP,而Spring AOP的底层是动态署理技能。跟各人一路回首一下动态署理:

  1. public static void main(String[] args) { 
  2.  
  3.         // 方针工具 
  4.         Object target ; 
  5.  
  6.         Proxy.newProxyInstance(ClassLoader.getSystemClassLoader(), Main.class, new InvocationHandler() { 
  7.             @Override 
  8.             public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { 
  9.  
  10.                 // 但凡带有@Transcational注解的要领城市被拦截 
  11.  
  12.                 // 1... 开启事宜 
  13.  
  14.                 method.invoke(target); 
  15.  
  16.                 // 2... 提交事宜 
  17.  
  18.                 return null; 
  19.             } 
  20.              
  21.         }); 
  22.     } 

(具体请参考我之前写过的动态署理:给女伴侣讲授什么是署理模式)

现实上Spring做的处理赏罚跟以上的思绪是一样的,我们可以看一下TransactionAspectSupport类中invokeWithinTransaction():

挪用要领前开启事宜,挪用要领后提交事宜

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读