目录
5. 什么是线程死锁?如何避免死锁? 死锁 死锁必须具备以下四个条件: 如何避免线程死锁?
6. 常见的对比 Runnable VS Callable shutdown() VS shutdownNow() isTerminated() VS isShutdown()
7. sleep() 方法和 wait() 方法区别和共同点? 区别 相同
8.为什么我们调用 start() 方法时会执行 run() 方法,为什么我们不能直接调用 run() 方法
14. 为什么我们调用start()方法时会执行run()方法,为什么我们不能直接调用run()方法?
19. synchronized 和 volatile 的区别是什么?
20. synchronized 和 Lock 有什么区别?
21. synchronized 和 ReentrantLock 区别是什么?
25. 多线程中 synchronized 锁升级的原理是什么?
26. synchronized 为什么是非公平锁?非公平体现在哪些地方?