![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
java相关的知识点!
bingaPang
good good study, day day up!
展开
-
CountDownLatch源码剖析
目录AQS中共享锁的实现AQS中共享锁相关的方法CountDownLatch原理浅析CountDownLatch源码剖析 在并发多线程之AQS源码分析(上)和并发多线程之AQS源码分析(下)中分析了AQS的独占锁下的方法。当然AQS也提供了共享锁的实现。接下来就先简单分析一下AQS中关于共享锁的实现原理流程及AQS源码,然后再剖析一下基于AQS实现的共享锁CountDownLatch。 AQS中共享锁的实现 在AQS对线程的调用阻塞时通过同步队列实现的,将阻塞的线程添加至同步队列中,当满足条件时则从队列中唤原创 2020-11-03 14:33:22 · 182 阅读 · 1 评论 -
ThreadLocal之源码剖析
目录ThreadLocal介绍、示例和原理简单示例ThreadLocal的原理ThreadLocal源码剖析ThreadLocalMap源码分析ThreadLocalMap中元素Entry的实现ThreadLocalMap各个全局属性剖析ThreadLocalMap方法剖析ThreadLocal源码剖析ThreadLocal属性剖析ThreadLocal各个方法剖析 ThreadLocal介绍、示例和原理 ThreadLocal为线程提供了私有变量保存的方式,每一个线程通过ThreadLocal只能访问自己原创 2020-09-18 18:29:06 · 169 阅读 · 1 评论 -
JDK动态代理原理剖析(下)
在JDK动态代理原理剖析(上)中对JDK动态代理的原理机制和自定义代理类生成进行了学习,接下来就来研究一下JDK的动态代理是怎么实现的,梳理梳理一下其源码。 在开始研究源码之前,先把其实现思路以及实现方法进行梳理一下,在梳理源码时可以起到很好的作用。 首先为了提高性能,JDK动态代理使用了缓存,在Proxy中声明如下: /** * a cache of proxy classes */ private static final WeakCache<ClassLoader, Class<?&g原创 2020-08-28 16:31:24 · 258 阅读 · 0 评论 -
JDK动态代理原理剖析(上)
目录JDK动态代理示例原理剖析实现自己的Proxy JDK动态代理示例 首先从一个常见的JDK动态代理示例来开始: 代理目标接口: /** * @Description: 代理目标接口 * @Author: binga * @Date: 2020/8/25 10:19 * @Blog: https://blog.csdn.net/pang5356 */ public interface TargetInterface { void doSomething(); } 实现类如下: /**原创 2020-08-27 18:31:19 · 215 阅读 · 0 评论