自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 HyperLogLog全部源码解析

版本是2020.09.10更新的英文注释就不贴了太长了,感兴趣的可以去github自己去搜索。https://github.com/redis/redis/blob/unstable/src/hyperloglog.cinclude “server.h”include <stdint.h>include <math.h>struct hllhdr{ char magic[4]; //魔术字符串,标识是hyperloglog uint8_t e

2020-09-24 14:01:48 799

原创 Spring容器启动过程源码阅读

这一版慢慢更新,慢慢读,慢慢写,仅供参考。new 一个AnnotationConfigApplicationContextAnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class);AbstractApplicationContext这个是父类的静态代码块 先加载ContextClosedEvent类,以避免出现奇怪的类加载器问题。(不懂贴的谷歌翻译。)static

2020-11-16 01:31:27 182

原创 synchronized各种状态下hash存放位置的探索与证明

markOop(对象头)在openjdk源码中,我们所说的对象头就是一个markOop的对象,这里贴一个markoop源文件的openjdk源码地址:http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/file/c92ba514724d/src/share/vm/oops/markOop.hpp简单的看一下37-54行的注释。// 32 bits:// --------// hash:25 ------------>| a

2020-10-28 15:47:19 970 3

原创 CountDownLatch源码阅读分析

最近有点着迷,countDownLatch还是比较简单的。也是Doug Lea之笔,其实思想都差不多。构造器方法public CountDownLatch(int count) { if (count < 0) throw new IllegalArgumentException("count < 0"); this.sync = new Sync(count); }看看他的aqsprivate static final class Sync e

2020-10-24 16:29:34 109

原创 ReentrantReadWriteLock之ReadLock加锁解锁过程源码解析

加锁public void lock() { sync.acquireShared(1); }public final void acquireShared(int arg) { if (tryAcquireShared(arg) < 0) doAcquireShared(arg); }tryAcquireShared方法protected final int tryAcquireShared(int u

2020-10-22 22:30:59 203

原创 ReadWriteLock源码阅读之WriteLock加锁解锁过程源码分析

写的有点乱,因为无论是ReadWriteLock还是ReentrantLock加锁解锁过程都很绕。加锁public void lock() { sync.acquire(1); }public final void acquire(int arg) { if (!tryAcquire(arg) && acquireQueued(addWaiter(Node.EXCLUSIVE), arg))

2020-10-22 19:24:22 232 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除