随笔分类 -  A1--jdk源码及设计

Jdk动态代理源码
摘要:Proxy 代码: java.lang.reflect.Proxy Proxy提供了创建动态代理类和实例的静态方法,它也是由这些方法创建的所有动态代理类的超类。 构造一个新的Proxy实例,并指定调用处理器 InvocationHandler。 protected Proxy(InvocationH 阅读全文

posted @ 2024-10-04 11:10 乐之者v 阅读(9) 评论(0) 推荐(0) 编辑

ReentrantLock源码简析
摘要:概念 ReentrantLock,可重入锁。在多线程中,可以通过加锁保证线程安全。 加锁和解锁 加锁: public void lock() { sync.lock(); } 解锁 public void unlock() { sync.release(1); } 内部类Sync继承AQS(Abst 阅读全文

posted @ 2020-04-08 20:27 乐之者v 阅读(276) 评论(0) 推荐(0) 编辑

ThreadLocal源码简解
摘要:一、ThreadLocal ThreadLocal,线程副本变量。 ThreadLocal,保证了每个线程都有独立的对象副本,保证了对象的唯一性,可以实现线程安全性。 UML图 如下所示: set(T value) 调用ThreadLocal的set(T value)和get()方法时,内部会使用到 阅读全文

posted @ 2020-01-14 13:50 乐之者v 阅读(290) 评论(0) 推荐(0) 编辑

AQS源码的简单理解
摘要:概念 AQS全称 AbstractQueuedSynchronizer。 AQS是一个并发包的基础组件,用来实现各种锁,各种同步组件的。它包含了state变量、加锁线程、等待队列等并发中的核心组件。 ReentrantLock、Semaphore、CountDownLatch、FutrueTask, 阅读全文

posted @ 2019-12-16 23:40 乐之者v 阅读(443) 评论(0) 推荐(0) 编辑

java线程池源码的理解
摘要:线程池 新建线程和切换线程的开销太大了,使用线程池可以避免频繁的创建和销毁线程,让创建的线程进行复用,节省系统资源。 线程池的关键类:ThreadPoolExecutor。 该类中包含了大量的多线程与并发处理工具,包括ReentrantLock、AtomicInteger、AQS、CAS、Block 阅读全文

posted @ 2019-12-06 00:07 乐之者v 阅读(400) 评论(0) 推荐(1) 编辑

如何阅读jdk及开源框架的源码?
摘要:0.使用工具 使用IDEA查看源码,并安装插件 translation,随时翻译源码中的注释。 注释一定要多看,哪怕是英文的注释也必须看。很多的要点,其实都写在注释里面了!!! 1.查阅资料 可以先查看网络博客,参考前辈的心得体会进行阅读。 2.理清主要流程 先理清整体的架构设计,执行顺序。 比如线 阅读全文

posted @ 2017-12-05 22:55 乐之者v 阅读(1828) 评论(0) 推荐(0) 编辑

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

导航

统计

点击右上角即可分享
微信分享提示