并发基础
1.进程与线程
2.线程与进程的关系,区别,优缺点
3.并发与并行
4.线程的生命周期和状态
5.什么是上下文切换
6.什么是线程死锁,怎么避免线程死锁
7.sleep()方法与wait()方法的区别
8.为什么调用start()方法会自动调用run()方法,为什么不直接调用run()方法
线程之间的通信方式
为什么要使用线程池?
降低资源损耗、提高响应速度、提高线程的可管理性
线程池的创建
ThreadpoolExecutor 参数:核心线程数、最大线程数、存活时间(非核心线程)、阻塞队列设置,拒绝策略设置。
9.多线程为什么存在线程危险
因为JVM内存模型规定对象存储在主存(共享内存)中,每个线程都有自己的工作内存,对对象的操作都在工作内存中,而不能直接对主存进行操作。并且线程不能访问其他线程的工作内存。变量的值何时写入主存中并不确定。
10.synchronized关键字
简单介绍
使用方式
https://www.cnblogs.com/lukelook/p/9946065.html
底层原理以及jdk1.6之后的优化
synchronized与ReentrantLock的区别
11.volatile关键字与synchronized关键字的区别
12.ThreadLocal
简介
内存泄漏
13.线程池
线程池的优点
Runable与Callable的区别
execute()与submit()的区别
ThreadPoolExecutor方式创建连接池
参数分析
饱和策略
14.原子类
简介
JUC中的4类原子类
AtomicInteger
15.AQS

浙公网安备 33010602011771号