面试
2025
30
- 当 Java 的 synchronized 升级到重量级锁后,所有线程都释放锁了,此时它还是重量级锁吗? 你了解 Java 中的读写锁吗? 你使用过 Java 的累加器吗? 你使用过 Java 中的哪些原子类? 你使用过 Java 中的哪些阻塞队列? 如何优化 Java 中的锁的使用? 如何在 Java 中控制多个线程的执行顺序? 什么是 Java 的 CAS(Compare-And-Swap)操作? 什么是 Java 的 CompletableFuture? 什么是 Java 的 ForkJoinPool? 什么是 Java 的 happens-before 规则? 什么是 Java 的 StampedLock? 什么是 Java 内存模型(JMM)? 什么是 Java 中的锁自适应自旋? 什么是 Java 中的原子性、可见性和有序性? 什么是 Java 中的指令重排? 说说 AQS 吧? 为什么 Java 中的 ThreadLocal 对 key 的引用为弱引用? 为什么在 Java 中需要使用 ThreadLocal? Java 创建线程池有哪些方式? Java 的 synchronized 是怎么实现的? Java 中 ReentrantLock 的实现原理是什么? Java 中 Thread.sleep(0) 的作用是什么? Java 中的 final 关键字是否能保证变量的可见性? Java 中的 InheritableThreadLocal 是什么? Java 中的 synchronized 轻量级锁是否会进行自旋? Java 中的 ThreadLocal 是如何实现线程资源隔离的? Java 中的线程安全是什么意思? Java 中使用 ThreadLocal 的最佳实践是什么? Synchronized 和 ReentrantLock 有什么区别?