一、围绕知识点
- 多线程的一些概念(进程、线程、并行、并发以及对于高并发的看法认识)
- 同步机制(lock、synchronized、atomic)
- 并发容器类(线程不安全示例以及解决办法、阻塞队列)
- 线程池
- AQS辅助类
- atomic类
- 分支合并框架
二、多线程的一些概念
- 进程是什么?
- 线程是什么?
- 进程和线程有什么联系?请简单举例。
- 什么是并行?
- 什么是并发?
- 并行与并发有什么区别?
- 请说一下同步、异步、阻塞和非阻塞。
- 什么是线程安全和线程不安全。
- 什么是上下文切换
- 什么是线程的上下文切换
- 什么是用户线程什么是守护线程,他两有什么区别?
- 如何在windows和linux下查找哪个线程cpu利用率最高?
- 线程的生命周期和状态(6)
- 说说sleep和wait的区别和共同点
- 我们为什么使用start而不直接调用run方法
- 线程启动的几种方式
- 多线程间的通信方式(4)
- java中interupt(),interrupted和isinterrupted
二、多线程的同步机制
- 说一说java的同步机制有哪些?
- 谈一谈synchronized关键字(方式,锁对象的不同,底层实现)
- 产生死锁的四个条件
- 如何避免死锁
- 如何排查死锁