ThreadLocal(线程变量副本).PDFVIP

  • 67
  • 0
  • 约1.65万字
  • 约 13页
  • 2018-12-01 发布于四川
  • 举报
ThreadLocal(线程变量副本).PDF

原原创创者者::黄黄钦钦建建 ((大大黄黄)) ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。 用空间换时间,它用于线程间的数据隔离,为每一个使用该变量的线程提供一个副本,每个线程都可以独立地改变自己的副本,而不会和其他线程 的副本冲突。 ThreadLocal类中维护一个Map,用于存储每一个线程的变量副本,Map中元素的键为线程对象,而值为对应线程的变量副本。 ThreadLocal在Spring 中发挥着巨大的作用,在管理Request作用域中的Bean、事务管理、任务调度、AOP等模块都出现了它的身影。 Spring 中绝大部分Bean都可以声明成Singleton作用域, 用ThreadLocal进行封装,因此有状态的Bean就能够以singleton的方式在多线程中正常工作 了。 友情链接:深入研究java lang ThreadLocal类 Java 内存模型: Java虚拟机规范中将Java运行时数据分为六种。 1 程序计数器:是一个数据结构,用于保存当前正常执行的程序的内存地址。Java虚拟机的多线程就是通过线程轮流切换并分配处理器时间来实现的, 为了线程切换后能恢复到正确的位置,每条线程都需要一个独立的程序计数器,互不影响,该区域为“线程私有” 。

文档评论(0)

1亿VIP精品文档

相关文档