Posts
2020-03
Redis持久化机制

前言 Redis是一款纯C语言编写的符合ANSI C标准实现的内存数据库。Redis以支持丰富的内存数据结构和高性能著称,在互联网行业中被广泛用于缓存数据和内存计算。 虽然Redis是一款内...  正文>>

2019-12
聊聊Java的引用类型(二)

前言 在之前的文章《聊聊Java的引用类型(一)》中,我们已经介绍了Java中的四种引用类型。在本文中,我们将深入JavaReference类的源码实现,看看Java的Reference和Re...  正文>>

聊聊Java的引用类型(一)

前言 Java在语言层面支持两种类型:原始类型(primitive type) 和 引用类型(reference type)。如果读者学过C语言的话,可以发现Java的引用类型类似于C语言里的...  正文>>

ThreadLocal实现原理

前言 ThreadLocal是Java提供的一种线程私有变量存储机制。通过ThreadLocal每个线程都可以有自己的私有变量,私有变量变量可以防止被线程共享导致线程安全性问题。 我们知道方法...  正文>>

2019-11
AQS实现原理

前言 Java在JDK1.5中引入了java.util.concurrency并发包,在这个并发包中包含了很多并发组件,比如Lock、CountDownLatch以及Barrier等等。而这些...  正文>>

2019-10
FutureTask实现原理

前言 Future 是Java中对一个异步计算结果的抽象。Java并发包中提供了一个java.util.concurrent.Future接口用于抽象异步计算结果。Future接口提供了一系列接...  正文>>

ThreadPoolExecutor实现原理

前言 在Java中,日常大家用的最多的线程池就是ThreadPoolExecutor,它是由 Doug Lea 实现并在JDK 1.5中随着java.util.concurrency并发包一起...  正文>>

2019-08
AccessController.doPrivileged的作用

前言 之前在看一些框架源码的时候,总是会遇到类似下面这样的代码。每次遇到都不是很清楚doPrivileged方法的作用是什么。为了解答自己的疑惑,就去看了有关Java安全相关的知识点,于是就有了...  正文>>

2019-04
Java动态代理

代理 代理(Proxy),在我们现实生活中经常会遇到,比如一些商品的销售代理商,公司授权给代理商,让其帮忙销售商品。还有,我们经常听到的代理人–负责帮别人处理事务。而对应到计算机中,代理是一种隐...  正文>>

使用CGLIB--动态代理

CGLIB介绍 CGLIB是一个字节码生成框架,它提供了一套高层次的API处理Java字节码的转换,可以在运行时继承Java类和实现接口。CGLIB常被用于在AOP框架、测试组件以及数据访问框架...  正文>>