• java线程学习之ThreadLocal


       ThreadLocal概念:线程局部变量,是一种多线程之间并发访问变量的解决方案。与synchronized加锁等方式不同,ThreadLocal完全不使用锁,而使用空间换时间的手段,为每个线程提供变量的独立副本,以保障线程安全。

          从性能上说,ThreadLocal不具备绝对的优势,在并发不是很高的时候,加锁的性能会更好,但作为一套与加锁完全无关的解决方案,在高并发量或子曰竞争激烈的场景下,使用ThreadLocal在一定程度上可以减少锁竞争。

    每个线程都保持对其线程局部变量副本的隐式引用,只要线程是活动的并且 ThreadLocal 实例是可访问的;在线程消失之后,其线程局部实例的所有副本都会被垃圾回收(除非存在对这些副本的其他引用)。 

    关于ThreadLocal就了解这么多,以后有收获会继续。。。

    生于忧患,死于安乐
  • 相关阅读:
    GNU GPL介绍
    《Getting Started with WebRTC》第一章 WebRTC介绍
    进一步解 apt-get 的几个命令
    状态模式----C++实现
    boost库asio详解1——strand与io_service区别
    Timer.5
    Timer.4
    Timer.3
    MFC定时器
    boost.asio系列——Timer
  • 原文地址:https://www.cnblogs.com/songlove/p/10751247.html
Copyright © 2020-2023  润新知