后端岗位面试题更新 2026-08-05

在 Java 中,如果使用线程池执行任务,ThreadLocal 变量能否被子线程继承?请说明原因及常见传递方案。

网易后端开发互联网/IT技术原理问题排查Java

考察说明

考察对 ThreadLocal 作用域、线程池复用机制及跨线程传递方案的理解

回答思路

  1. 明确 ThreadLocal 仅与当前线程绑定,线程池复用线程时默认不传递
  2. 说明任务执行线程与提交线程不同导致 ThreadLocal 不可见
  3. 提出 InheritableThreadLocal 及其局限(复用线程不更新、异步传递风险)
  4. 提出 TransmittableThreadLocal 或显式传递参数的方案
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。