![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 88
zzmlake
C/C++十年工作经验,Java七年工作经验
展开
-
源码分析与实战——Java动态代理的两种方式
SpringAOP可以说是面试必问的内容之一,这是作为JAVA高级开发者必须掌握的技能之一。 今天我结合实例、源码分析一下这一套机制。默认大家对静态代理和动态代理已经有了基础的理解。 1、动态代理 静态代理和动态代理的差别在此不再多说,网上到处是。我主要结合源码想说说动态代理,它是SpringAop的基础。 1.1 JDK自带的代理机制 1.1.1 示例 接口定义: package TestPro...原创 2021-03-11 19:06:32 · 279 阅读 · 0 评论 -
源码分析与实战——深入理解ScheduledThreadPool线程池延时执行机制(二)
1、前言 在上篇博文中《源码分析与实战——深入理解ScheduledThreadPool线程池延时执行机制(一)》中,其实我们留下几个问题:ScheduledThreadPool是如何保证任务delay到时准时执行的?任务执行顺序会不会出问题?毕竟按照siftUp()方法的源代码,是无法保证队列是按time有序的。我们今天来探讨一下。 2、复习 上篇博文中我们学习了ScheduledThreadP...原创 2020-02-13 19:32:59 · 969 阅读 · 0 评论 -
源码分析与实战——深入理解ScheduledThreadPool线程池延时执行机制(一)
1、前言 在上篇博客《源码分析与实战——深入理解Java的4种线程池》中,我们详细分析了一下Java四种线程池的基本源码,编写代码进行了尝试。其中single单线程池、fiexed定长线程池、cached缓存线程池都比较简单,scheduled线程池则复杂一些。今天我们结合延迟队列来对它进行源码分析,详细讲解一下延时执行线程池的工作原理。 2、线程池定义 首先,我们还是再来看一下最简单的一个使用示...原创 2020-02-10 23:53:28 · 1316 阅读 · 0 评论 -
源码分析与实战——深入理解Java的4种线程池
大家都知道,Java一共提供了4中原创 2020-02-08 21:49:24 · 653 阅读 · 0 评论 -
源码分析与实战——彻底理解Thread和Runnable使用
众所周知,在Java高级开发里面,多线程会经常被使用。通常有2种方式去启动一个新线程: 定义一个Thread的子类,在子类中重写run方法。 定义一个类实现Runnable接口,重写run方法;然后通过新建Thread线程去执行。 前者是完全独立的线程,可以直接运行;后者不可以直接运行,必须通过Thread线程去运行。当需要多个线程去完成同一个任务时,一般建议使用第二种方...原创 2020-02-07 14:59:16 · 1052 阅读 · 0 评论