在博客园里翻过很多博客,对高手们甚是敬畏,谢谢你们教会了我许多!我也尝试贡献一点自己的学习心得,这是我的第一篇博客,纯原创,谢谢。 这里我想聊的是ThreadLocal,本地线程变量。不单独作概念上的解释了,网上太多。我以一个案例为主线一步步说明为什么我们需要用ThreadLocal?使用Threa ...
分类:
其他好文 时间:
2019-08-11 17:37:09
阅读次数:
384
ThreadLocal是一个支持泛型的java类,抛开里面的静态内部类ThreadLocalMap不说,其实它没几行代码,不信,您自己去看看。它用来干啥?类上注释说的很明白: 它能让线程拥有了自己内部独享的变量 每一个线程可以通过get、set方法去进行操作 可以覆盖initialValue方法指定 ...
分类:
其他好文 时间:
2019-08-09 15:11:18
阅读次数:
64
一.Thread API: setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh) 首先要了解什么是Thread.UncaughtExceptionHandler,默认来说当线程出现未捕获的异常时,会中断并抛出异常 ...
分类:
编程语言 时间:
2019-08-08 21:46:55
阅读次数:
107
public class Run { // 类ThreadLocal解决的是变量在不同线程间的隔离性,也就是 不同的线程拥有自己的值, // 不同线程中的值是可以放入ThreadLocal中进行保存的。 public static ThreadLocal t1= new ThreadLocal();... ...
分类:
编程语言 时间:
2019-08-08 00:20:20
阅读次数:
108
为了更好地探讨Netty的内存模型,后面会用到,这里我还是决定跟大家一起看下ThreadLocal和FastThreadLocal的源码,有的时候我们在看源码的时候会一层层的遇到很多之前没有看过的内容,我觉得有的时候为了更好地理解大牛的思想,还是去跟一下源码比较好。ThreadLocal我想大家应该 ...
分类:
Web程序 时间:
2019-08-04 19:57:20
阅读次数:
140
ThreadLocal也是在面试过程中经常被问到的,本文主要从以下三个方面来谈对ThreadLocal的一些理解: ThreadLocal用在什么地方 ThreadLocal一些细节 ThreadLocal的最佳实践 ThreadLocal用在什么地方? 讨论ThreadLocal用在什么地方前,我 ...
分类:
其他好文 时间:
2019-08-01 09:27:33
阅读次数:
86
一般性的介绍(内存泄漏,基本用法,应用场景,最佳实践等)官网和其他博客都说的很清楚,这里主要记录一下我认为threadlocal的最核心的地方和难点。 主要会包括以下方面:1. 内存泄漏问题,对象引用关系 2. threadLocalHashCode值的选取 3. 深入探究set方法。 注:本文中代 ...
分类:
其他好文 时间:
2019-07-23 09:20:10
阅读次数:
84
前言 在高并发的环境下,当我们使用一个公共的变量时如果不加锁会出现并发问题,例如SimpleDateFormat,但是加锁的话会影响性能,对于这种情况我们可以使用ThreadLocal。ThreadLocal是将公共变量copy一份到线程私有内存中以消除并发问题,ThreadLocal是JDK内部提 ...
分类:
其他好文 时间:
2019-07-16 18:51:43
阅读次数:
96
1.与AsyncLocal对应的是ThreadLocal 2.两种类型 初始赋值 AsyncLocalString.Value = new List { "1" }; AsyncLocalInt.Value = 1; 值对象是 1 引用类型是AsyncLocalString.Value="1" 可以 ...
分类:
其他好文 时间:
2019-07-16 18:38:22
阅读次数:
78