知识图谱
记录我的知识图谱
向光奔跑
Java 开发
展开
-
知识图谱整理之Java基础ScheduledThreadPoolExecutor
前言 之前主要是想了解Spring下的定时任务机制,但是在看了相关源码后,发现必须先要了解ScheduledThreadPoolExecutor,之后在阅读会更加简单,顾先去看了下这块的源码,发现其还是很有意思和学习的地方的。 ScheduledThreadPoolExecutor介绍 我们首先要知道ScheduledThreadPoolExecutor是JUC包下关于定时任务这块的,不知道大家跟...原创 2019-10-27 17:14:57 · 329 阅读 · 0 评论 -
知识图谱整理之Java基础ThreadPoolExecutor
ThreadPoolExecutor介绍 ThreadPoolExecutor是一个管理线程的一个类,可以有效的复用和控制线程。之前比较好奇,像这样的池化技术是如何实现的,今天我们就来一起探究下。本文是在JDK8的源码下进行阅读的,由于是自己总结,所以太过基础的东西不做赘述。 ThreadPoolExecutor源码解析 构造方法 我们先从构造方法开始入手来了解这个类,初学者也都是从了解构造方法中...原创 2019-10-25 14:31:39 · 180 阅读 · 0 评论 -
知识图谱整理之Java基础CyclicBarrier
CyclicBarrier介绍 CyclicBarrier字面意思回环栅栏,通过它可以实现让一组线程等待至某个状态之后再全部同时执行。叫做回环是因为当所有等待线程都被释放以后,CyclicBarrier可以被重用。我们暂且把这个状态就叫做barrier,当调用await()方法之后,线程就处于barrier了。 CyclicBarrier概览 它内部是直接使用了ReentrantLock来实现的,...原创 2019-10-16 19:46:21 · 180 阅读 · 0 评论 -
知识图谱整理之Java基础CountDownLatch
CountDownLatch介绍 CountDownLatch是什么呢?我个人的话用的比较少,这次学习这块的源码把粗浅的原理搞懂就行,这个在我理解就是用来一个线程等待其他线程的动作都处理完之后触发,可能这么说比较难以理解,我们还是直接来看源码实现会比较简单。 CountDownLatch概览 CountDownLatch内部也有一个继承了AQS的Sync的内部类,不过和ReentrantLock不...原创 2019-10-16 11:27:39 · 143 阅读 · 0 评论 -
知识图谱整理之Java基础ReentrantLock
ReentrantLock介绍 ReentrantLock也是在JUC并发包下的,实现可重入锁的机制。也是在AQS基础之上的,在上一篇AQS的讲解基础下,理解这篇会比较的简单。知识图谱整理之Java基础AbstractQueuedSynchronizer 。 ReentrantLock的概览 要了解这个类,主要还是从它的使用方法上入手,因为这个是的数据结构基础是在AQS之上的,所以内部不再重写数据...原创 2019-10-15 11:27:45 · 169 阅读 · 0 评论 -
知识图谱整理之Java基础AbstractQueuedSynchronizer
AbstractQueuedSynchronizer介绍 说起这个类,或者说说起这个别名AQS,大家都不会陌生,是一个抽象队列同步器。但是具体内部是如何实现,可能有些人不太了解,今天就来进入这个抽象类的源码。 AbstractQueuedSynchronizer内部数据结构 AQS是一个队列同步器,那必不可少的,肯定存在队列的数据结构,而这是内部实现的,我们来看下这个内部类: static fi...原创 2019-10-14 18:19:42 · 148 阅读 · 0 评论 -
知识图谱整理之Java基础ThreadLocal
ThreadLocal介绍 先来介绍下这个类的作用。首先这个类的操作是线程安全的,主要是用来存储线程相关的信息,存储局部变量,实现局部变量的线程隔离。 主要方法介绍 get方法源码 public T get() { Thread t = Thread.currentThread(); ThreadLocalMap map = getMap(t); ...原创 2019-10-10 17:38:26 · 171 阅读 · 0 评论 -
知识图谱整理之Java基础ConcurrentHashMap
ConcurrentHashMap介绍 ConcurrentHashMap是在Java并发包下的一个类,它的作用和HashMap类似,不过做了线程安全的防护,支持并发操作。 本文分析的也是基于JDK1.8的 数据存储结构 我们直接来看下源码会比较直观: static class Node<K,V> implements Map.Entry<K,V> { f...原创 2019-09-28 18:02:21 · 152 阅读 · 0 评论 -
知识图谱整理之Java基础HashTable和SynchronizedMap
线程安全的简单HashMap介绍 今天先来讲一下HashTable和SynchronizedMap,这两块我虽然在面试中没有回答到过,但是还是决定一起整理下。这两个类的主要功能跟HashMap相似,不过稍微存在一些区别而已。 HashTable源码走读 HashTable说实话我在工作中没有正在使用过,更多的还是在当初面试题上有过了解,今天就直接看源码来进行知识巩固。 首先我们还是从他的数据存储...原创 2019-09-26 10:26:38 · 550 阅读 · 1 评论 -
知识图谱整理之Java基础HashMap
本系列完善自己的知识图谱,更从容的表达描述 HashMap介绍 HashMap是一个用于存储Key-Value键值对的集合,每一个键值对也叫做Entry。这些个键值对(Entry)分散存储在一个数组当中,这个数组就是HashMap的主干。 Hash数据存储 ...原创 2019-09-25 18:12:13 · 147 阅读 · 0 评论