InheritableThreadLocal 原理
时间: 2023-10-17 10:35:50 浏览: 72
java多线程编程之InheritableThreadLocal
InheritableThreadLocal是Java中的一个类,它是ThreadLocal的子类。它的原理是在父线程和子线程之间传递数据。当一个线程创建子线程时,子线程会继承父线程中的InheritableThreadLocal变量的值。这样,通过InheritableThreadLocal,父线程中设置的值可以在子线程中获取到。
InheritableThreadLocal类中有一个protected方法childValue,该方法用于定义子线程在继承父线程的InheritableThreadLocal变量时如何处理值。默认情况下,childValue方法返回父线程中的值。
此外,InheritableThreadLocal类还包含了一些其他方法,比如getMap方法用于获取当前线程的InheritableThreadLocalMap对象,createMap方法用于创建当前线程的InheritableThreadLocalMap对象并初始化第一个值。通过这些方法,InheritableThreadLocal能够实现父子线程之间的值传递。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [InheritableThreadLocal 实现原理](https://blog.csdn.net/mccand1234/article/details/116357251)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [undefined](undefined)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文