1,并发于并行
什么是并发?
什么是并行?
并发于并行的区别?
2,线程
线程的实现
线程的状态
优先级
线程调度
创建线程的多种方式
守护线程
线程于进程的区别于联系
3,线程池
自己设计线程池
submit()和execute()
线程池原理
为什么不允许使用executors创建线程池
线程池的分类
4,线程安全
什么叫线程安全
死锁,如何避免死锁
线程安全与内存模型的关系
5,锁
CAS
乐观锁与悲观锁
数据库相关锁机制
分布式锁
偏向锁
轻量级锁和重量级锁
Monitor
锁优化
锁消除
锁粗化
自旋锁
可重入锁
阻塞锁
6,synchronized
synchronized如何实现的?
synchronized 和 lock 之间的关系?
不使用synchronized如何实现一个线程安全的单例?
synchronized和原子性,可见性,有序性之间的关系?
7,volatile
happens-before
内存屏蔽
编译器指令重排和cpu指令重排
volatile实现原理
volaile和原子性,可见性,有序性之间的关系
有了synchronized 为什么还需要volatile?
8,其他
sleep 和 wait
wait 和 notify
notfiy 和 notfiyAll
ThreadLocal
写一个死锁
生产者和消费者
9,并发包
Thread
Runnable
Callable
ReentrantLock
ReentrantReadWritLock
atomic *
semaphore
countdownlatch
concurrenthashmap
executor