
JVM / JUC 线程池的子任务能不能拿到父任务的 ThreadLocal(不能)?如果想拿到该怎么办
在Java中ThreadLocal是与线程绑定的变量每个线程都有自己独立的ThreadLocal变量副本因此如果将父任务和子任务放在不同的线程中执行子任务将无法直接访问父任务设置的ThreadLocal变量如果你希望子任务能够访问父任务的ThreadLocal变量可以考虑以下几种解决方案显式传递值在创建子任务之前显式地将父任务的ThreadLocal值传递给子任务javaclassParentTaskimplementsRunnableprivatestaticThreadLocalStringthreadLocalValueThreadLocalwithInitialdefaultOverr
2024-08-07 19:09 832 3 ThreadLocal 多线程 线程池