假如线程池中有任务需要读取主线程的私有数据,而主线程通过 ThreadLocal 设置了该数据,可以有哪些办法?
考察说明
考察线程池与 ThreadLocal 搭配使用时数据传递的实现机制与注意事项
回答思路
- 明确 ThreadLocal 默认不跨线程传递的特性
- 能给出 InitableThreadLocal / TransmittableThreadLocal 或显式传递的方案
- 说明传递时机(提交时快照或通过包装任务)
- 提到线程复用导致的数据残留与清理策略
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。