说一下 synchronized 底层实现原理?synchronized 和 volatile 的区别是什么?
ThreadLocal是什么?有哪些使用场景?ThreadLocal是Java中的一个线程级别的变量,它为每个线程提供了独立的变量副本。换句话说,每个线程都可以通过ThreadLocal访问自己的变量副本,互不干扰。ThreadLocal的主要作用是为多线程环境下的数据共享问题提供一种解决方案。ThreadLocal的使用场景主要包括以下几种情况:线程封闭(ThreadConfinement):将