1、JUC简介
在 Java 5.0 提供了 java.util.concurrent(简称JUC)包,在此包中增加了在并发编程中很常用的工具类,用于定义类似于线程的自定义子系统,包括线程池,异步 IO 和轻量级任务框架;还提供了设计用于多线程上下文中的 Collection 实现等
- JUC 简介
- 尚硅谷JUC源码讲授实战教程完整版(java juc线程精讲)
2、volatile
- Java中volatile关键字的最全总结
3、CAS
- Java中的CAS实现原理
4、CountDownLatch
- CountDownLatch的理解和使用
5、Callable
创建执行线程的方式三:实现Callable接口。相较于实现Runnable接口的方式,方法可以有返回值,并且可以抛出异常。
- Java并发编程:Callable、Future和FutureTask
@FunctionalInterface
public interface Callable<V> {
/**
* Computes a result, or throws an exception if unable to do so.
*
* @return computed result
* @throws Exception if unable to compute a result
*/
V call() throws Exception;
}
6、同步
synchronized 和 Lock
- 【Java并发编程之深入理解】Synchronized的使用
- synchronized内置锁的介绍
- java 锁 Lock接口详解
- Java锁–Lock实现原理(底层实现)
- Linux C互斥锁和条件变量(POSIX标准)
- 你真正了解Java中的wait()和notify()吗?
- java中的Lock类和Condition类
- Java–Lock&Condition的理解
- 【Java并发】ReadWriteLock读写锁的使用
- 【Java并发编程】ReentrantReadWriteLock源码及实现原理分析
7、线程及线程池
- java主线程结束和子线程结束之间的关系
- 谈谈Java中线程的执行顺序
- java并发编程:Executor、Executors、ExecutorService
- Executors创建的4种线程池的使用
- 「强制」-为什么阿里要禁用 Executors 创建线程池?
8、fork / join
- Fork/Join框架详解