自定义博客皮肤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)
  • 问答 (8)
  • 收藏
  • 关注

原创 ThreadPoolExecutor线程池源码解析以及面试难题

大白话讲解ThreadPoolExecutor源码前言一、在看源码是先思考几个问题?二、ThreadPoolExecutor源码1.重要常量和变量2.构造器3. execute(Runnable command) 任务提交方法(1) execute(...) 提交任务(2) workerCountOf(...) 计算线程数(3) addWorker(...)方法(4) Worker类(5) runWorker(this)方法(6) getTask() 获得阻塞队列中任务(7) processWorkerE

2021-11-26 17:29:04 201

原创 ConcurrentHashMap源码讲解

大白话讲解ConcurrentHashMap源码前言一、重要常量和变量二、构造器(5个)put(...)方法1.putVal(...)方法2. initTable()方法--初始化数组3. 其他四个方法前言由于 HashMap 是线程不安全的,无法运用到高并发的环境中,这时候线程安全的 ConcurrentHashMap 就有用武之地了。ConcurrentHashMap 是基于分段锁(synchronized)和 CAS 来保证线程安全的。一、重要常量和变量// 数组最大长度 = 2^30p

2021-11-23 14:31:55 564

原创 大白话讲HashMap源码

大白话讲HashMap源码前言一、HashMap源码 (JDK >=1.8)1. 一些重要常量和变量2.构造器3. put() 源码 (注:使用第一种构造方法进行 put )(1) hash() 算法(2) putVal (...)(3) resize() 扩容方法(4) treeifyBin(...) 树化方法 (调用后并不是一定会树化)二、`HashMap` 的面试难题1. 为什么 HashMap 数组长度必须要2的倍数?2. HashMap 扩容后原有元素怎么存放?3. HashMap 树化条件

2021-11-18 10:27:19 1121

原创 大白话讲并发编程之 CountDownLatch 源码

大白话讲并发编程之 CountDownLatch 源码一、什么是 CountDownLatch ?二、源码解析1.先看构造器2.await() 方法3.countDown() 方法总结一、什么是 CountDownLatch ?CountDownLatch 是 Doug Lea 写的一个并发工具类,其中的关键方法是 await() 和 countDown()。它有两个比较典型的应用:主线程等待其他线程任务完成后再执行。典型案例:服务启动时,会等一系列组件加载完后再执行;代码如下(示例)//

2021-11-12 15:20:13 266

原创 大白话讲并发编程之Semaphore源码

大白话讲并发编程之Semaphore源码,也就明白限流和降级是怎么回事了前言一、先看构造器二、acquire()方法三、release()方法结尾前言上一节分享了 ReentrantLock 这个独占锁后,那么接下来就分享 Semaphore 这个共享锁的源码,当然讲的还是公平锁。Semaphore这个类主要作用是用来作限流和降级;先说这个类怎么用; Semaphore semaphore = new Semaphore(3) for (int i = 0; i &lt

2021-11-11 14:55:06 284

原创 大白话讲ReentrantLock源码

ReentrantLock源码解析,再也不怕面试官问源码了什么是ReentrantLock第一步.创建ReentrantLock那么公平锁和非公平锁有什么区别呢?第二步.线程执行到lock()方法--公平锁功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流

2021-11-10 17:02:05 602

空空如也

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

TA关注的人

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