Java多线程相关问题

1.线程池的原理,为什么要创建线程池?创建线程池的方式?

2.线程的生命周期?什么时候会出现僵死线程?

3.说说线程安全问题?什么是线程安全?如何实现线程安全?

4.创建线程池有哪几个核心参数?如何合理的配置线程池的大小?

5.volatile、ThreadLocal的使用场景和原理;

6.ThreadLocal什么时候会出现OOM情况?为什么?

7.sychronized、volatile区别?synchronized锁粒度、模拟死锁场景、原子性和可见性