十月 29, 2020

Future类的使用和原理

java异步接口Future和Callable Future是Concurrent包提供的一种异步得到结果的接口。...

十月 29, 2020

JUC包一些锁的介绍和使用

JUC包的这些锁都是基于AQS的实现,关于AQS还请看下一篇文章 一、ReentrantLock可重入锁独占锁,synchronized就属于可重入锁...

十月 29, 2020

CAS、synchronized和volatile

一.CASCASnative方法。修改一个值,当前为0,现在要加一,在写回的时候,判断该变量是否还是0,。 ABA问题CAS会有一个问题,如果该变量还是0...

十月 29, 2020

AQS源码解析

AQS介绍AQS是同步锁内实现同步的共同父类,如下UML图能看出,ReentrantLock等锁都是基于AQS。(图片)下面主要介绍独占锁(Exclusi...

十月 29, 2020

Thread的几种方法和线程状态

Thread的方法1.sleep睡眠几秒钟,让出CPU让别人执行。 2.yield短暂的让一下CPU,谁能抢到就执行,抢不到还是原来的执行。 3.join...

十月 29, 2020

ConcurrentHashMap源码分析

jdk1.8ConcurrentHashMap解析本文部分内容来源于互联网和jdk1.8源码,如有不对请谅解并指正 1、前言ConcurrentHashM...

十月 29, 2020

wait和notify总结

直接上结论首先这两个东西必须在synchronized里面使用,要用到别的锁会有替代下面两个的东西。 wait:挂起当前线程,释放获取到的锁,直到别的线...