实现一个AtomicInteger

什么是AtomicInteger AtomicInteger 顾名思义是一个具有原子化操作的 Integer,与普通的Integer的区别是 AtomicInteger 采用一个CAS 的方式使Int

Full GC 触发流程

什么是 Minor GC/Major GC 首先我们先科普一下JVM 经典的堆布局: 对于经典的 JVM heap 布局,有两个区域比较清晰,首先是Young 区,一般会来存放年轻的对象或者刚被

GC root 在哪里?

什么是GC Root 首先我们知道标记算法,JVM 的标记算法我们可以了解为一个可达性算法,所以所有的可达性算法都会有起点,那么这个起点就是GC Root

漏桶算法的设计与实现

什么是漏斗算法? 漏斗算法顾名思义采用一个漏斗来对流量进行限制。 因为漏斗下面有孔,所以会定时的漏水下去,然后我们可以将流量想象为从上边落入漏斗

剑指offer

五天刷完剑指 No2 单例模式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 class No2TwiceCheckSingleton { private volatile static No2TwiceCheckSingleton instance = null; private static final Object sybObj = new Object(); private No2TwiceCheckSingleton() { } static No2TwiceCheckSingleton getInstance() { if (instance == null) { synchronized (sybObj) { if (instance == null) { instance