Java源码
文章平均质量分 73
majinliang1234
这个作者很懒,什么都没留下…
展开
-
java 8 ConcurrentHashMap源码解析
简介java(版本:1.8.0_161) 中ConcurrentHashMap主要在多线程中使用,dev不需要自己保证数据同步。用法基本上和HashMap相似。本文主要讲解源码中的put方法是怎么工作的。让我们带着问题去看源码。 问题1. ConcurrentHashMap是如何保证多个线程同时调用put方法时而不出现错误的2.ConcurrentHashMap是如何进行扩容的...原创 2018-06-07 22:21:58 · 189 阅读 · 1 评论 -
ReentrantLock源码解析
1. 基本概念ReentrantLock是一种排他锁,拥有synchronized的功能但是又比synchronized强大。ReentrantLock可以以公平或者非公平的方式去获取锁,默认采用非公平的方式去获取锁。本文主要讲解默认方式(非公平的去获取锁)2. 继承关系ReentrantLock实现了Lock和Serializable,所以ReentrantLock需要实现Lock的...原创 2018-09-09 19:48:08 · 129 阅读 · 0 评论 -
ThreadPoolExecutor源码解析
基本概念线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。继承关系ThreadPoolExecutor继承了AbstractExecutorService,AbstractExecutorService继承了ExecutorService,ExecutorService继承了Executor。public interface Executo...原创 2018-09-13 10:26:27 · 107 阅读 · 0 评论