
精通JUC并发编程
文章平均质量分 88
java.util.concurrent包下几乎常用类的使用、源码剖析
秃秃爱健身
熟读JDK、SSM、SpringCloud生态源码,对源码有独特的见解,可以写出让大多数人看懂的源码分析文章。
展开
-
【JUC并发编程】18 CopyOnWriteArrayList源码也就够看2分钟
CopyOnWriteArrayList原理、源码原创 2023-02-15 19:27:30 · 1585 阅读 · 30 评论 -
【JUC并发编程】17 ArrayBlockingQueue和LinkedBlockingQueue源码2分钟看完
【JUC并发编程】ArrayBlockingQueue和LinkedBlockingQueue源码2分钟看完原创 2023-02-12 22:34:23 · 2072 阅读 · 29 评论 -
【JUC并发编程】 16 深入理解AQS的实现原理、源码分析
深入研究AQS的实现原理、源码分析原创 2022-04-20 22:41:38 · 877 阅读 · 2 评论 -
【JUC并发编程】15 CountDownLatch原理、源码解析
CountDownLatch实现原理、源码分析原创 2021-11-09 20:34:44 · 476 阅读 · 0 评论 -
【JUC并发编程】14 TransmittableThreadLocal解决线程池中ThreadLocal无法在父子线程之间传递的问题
TransmittableThreadLocal如何使用?如何解决线程池中ThreadLocal无法在父子线程之间传递的问题?原创 2022-05-03 12:40:16 · 2297 阅读 · 12 评论 -
【JUC并发编程】13 读写锁ReentrantReadWriteLock原理/源码解析
读写锁实现原理?ReentrantReadWriteLock源码分析?聊聊读写锁的锁升级和锁降级?锁降级的作用?为什么要使用读写锁?为什么读写锁中读锁和写锁采用一个变量来标识?读写锁如何保证写线程不饿死?为什么实例化Sync时要获取到state变量之后再setState()?如何知道当前线程获取到了多少次读锁?假如全程只有一个线程获取读锁,还有必要使用ThreadLocal维护线程拥有的读锁数量吗?原创 2022-04-25 09:36:00 · 1496 阅读 · 5 评论 -
【JUC并发编程】12 Semaphore原理/源码解析
Semaphore原理、Semaphore源码解析原创 2021-11-12 22:06:59 · 848 阅读 · 0 评论 -
【JUC并发编程】11 ConcurrentHashMap如何计算Size
一、前言我们都知道,ConcurrentHashmap这个并发集合框架是线程安全的,二、ConCurrentHashMap#size()方法原创 2021-11-16 20:41:34 · 4490 阅读 · 3 评论 -
【JUC并发编程】 10 ConCurrentHashMap源码面试大全
1. 多线程环境下如何安全的使用Map结构?2. ConcurrentHashMap1.7和1.8的区别?3. ConcurrentHashMap中变量使用final和volatile修饰的作用?4. 在多线程场景下,如何保证插入数据线程安全?5. 哪些情况下,会触发扩容⾏为呢?6. 在多线程场景下,当发⽣哈希冲撞的时候,如何知道table数组正在扩容中?7. 在多线程场景下,它是如何进⾏扩容的?8. ConcurrentHashMap是如何对旧数据进⾏迁移的?9. 为什么计算总参与扩原创 2022-02-24 20:38:51 · 2185 阅读 · 6 评论 -
【JUC并发编程】9 可重入锁原理、自己实现一个可重入锁
可重入锁实现原理?自己实现一个可重入锁原创 2022-04-25 13:42:08 · 752 阅读 · 1 评论 -
【JUC并发编程】8 InheritableThreadLocal(可继承的ThreadLocal)详解
InheritableThreadLocal(可继承的ThreadLocal)详解?为什么InheritableThreadLocal可以实现父子线程变量的共享?InheritableThreadLocal和ThreadLocal的区别是什么?原创 2022-05-02 08:09:32 · 2811 阅读 · 28 评论 -
【JUC并发编程】7 ReentrantLock锁机制原理/源码分析
Lock实现原理?ReentrantLock实现原理?ReentrantLock源码分析?原创 2022-04-22 15:46:36 · 764 阅读 · 2 评论 -
【JUC并发编程】6 CyclicBarrier源码/原理解析
CyclicBarrier源码、CyclicBarrier原理原创 2021-11-13 22:08:25 · 670 阅读 · 0 评论 -
【JUC并发编程】5 定时任务线程池ScheduledThreadPoolExecutor的使用
ScheduledThreadPoolExecutor介绍ScheduledThreadPoolExecutor继承自ThreadPoolExecutor。它主要用来在给定的延迟之后执行任务,或者定期执行任务。通常使用工厂类Executors来创建。ScheduledThreadPoolExecutor的功能与Timer类似,但比Timer更强大,更灵活,Timer对应的是单个后台线程,而ScheduledThreadPoolExecutor可以在构造函数中指定多个对应的后台线程数。2.Sc原创 2020-08-09 17:09:34 · 13407 阅读 · 0 评论 -
【JUC并发编程】4 如何优雅的拿到线程池中的异常?
优雅的拿到线程池中的异常原创 2021-06-18 20:33:48 · 608 阅读 · 0 评论 -
【JUC并发编程】3 ConcurrentHashMap的get()方法真的不需要加锁吗?
一、前言我们都知道,ConcurrentHashmap这个并发集合框架是线程安全的,当我们看get()方法的源码时,会发现get操作全程没有加锁。但是真的是这样的吗?本文我们就深入的看看它为什么大家都说它不需要加锁?是不是真的不需要加锁?留个悬念,在一种特殊场景下是要加锁的。二、ConCurrentHashMap#get()方法1、流程:使用扰动函数计算key的hash值,取到其所在的数组下标位置。如果节点是首节点,直接返回。如果节点的hash值eh是负值,说明ConCurrentHashMa原创 2021-11-12 20:05:57 · 6832 阅读 · 0 评论 -
【JUC并发编程】2 从硬件来看volatile实现原理
精通JUC并发编程之volatile实现原理原创 2021-04-17 13:49:52 · 629 阅读 · 2 评论 -
【JUC并发编程】1 ThreadPoolExecutor线程池源码解析
1. 为什么要使用线程池?2. 线程池的执行流程?3.线程池的实现原理?4. 源码分析ThreadPoolExecutor原创 2021-06-24 22:08:03 · 586 阅读 · 0 评论