实现一个AtomicInteger

什么是 AtomicInteger AtomicInteger 顾名思义是一个具有原子化操作的 Integer,与普通的 Integer 的区别是 AtomicInteger 采用一个 CAS 的方式使 Integer 的自增等操作变成原子化操作。 实现的之前需要了

GC root 在哪里?

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

什么是 Minor GC/Major GC

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

漏桶算法的设计与实现

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

剑指offer

No2 单例模式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 class No2TwiceCheckSingleton { private volatile static No2TwiceCheckSingleton instance = null; private static final Object sybObj = new Object(); // 一定记住要私有化构造器,不然人家还是能够创建 private No2TwiceCheckSingleton() { }