昆明java培训
达内昆明广州春城路

18487146383

热门课程

什么是 ThreadLocal变量?

  • 时间:2016-11-30
  • 发布:昆明Java培训
  • 来源:达内新闻

ThreadLocal是Java里一种特殊的变量。每个线程都有一个ThreadLocal就是每个线程都拥有了自己独立的一个变量,竞争条件被彻底消除了。

它是为创建代价高昂的对象获取线程安全的好方法,比如你可以用ThreadLocal让SimpleDateFormat变成线程安全的,因为那个类创建代价高昂且每次调用都需要创建不同的实例所以不值得在局部范围使用它,如果为每个线程提供一个自己独有的变量拷贝,将大大提高效率。

首先,通过复用减少了代价高昂的对象的创建个数。其次,你在没有使用高代价的同步或者不变性的情况下获得了线程安全。

线程局部变量的另一个不错的例子是ThreadLocalRandom类,它在多线程环境中减少了创建代价高昂的Random对象的个数。

了解详情请登陆昆明达内Java培训官网(km.Java.tedu.cn)!

上一篇:Java内存模型是什么?
下一篇:如何避免Java多线程中的死锁?

应届生来达内学Java技术,三年后以40w高薪入职大众点评

昆明达内java培训教你如何选择一门编程语言

阿里送好礼,java开发人员的福音来了

昆明达内java培训通知你下一年的八大趋势

选择城市和中心
贵州省

广西省

海南省

扫一扫

了解更多干货