zoukankan      html  css  js  c++  java
  • 【JavaP6大纲】多线程篇:ThreadLocal 是什么?工作原理是什么?如何解决 Hash 冲突?内存泄露是怎么回事?为什么key 是弱引用?应用场景有哪些?

    ThreadLocal 是什么?ThreadLocal 工作原理是什么?ThreadLocal 如何解决 Hash 冲突?ThreadLocal 的内存泄露是怎么回事?为什么 ThreadLocalMap 的 key 是弱引用?ThreadLocal 的应用场景有哪些?

    ThreadLocal 是什么?

    ThreadLocal 是一个本地线程副本变量工具类。主要用于将私有线程和该线程存放的副本对象做一个映射,各个线程之间的变量互不干扰,在高并发场景下,可以实现无状态的调用,适用于各个线程不共享变量值的操作。

    ThreadLocal 工作原理是什么?

    每个线程的内部都维护了一个 ThreadLocalMap,它是一个 Map(key,value)数据格式,key 是一个弱引用,也就是 ThreadLocal 本身,而 value 存的是线程变量的值。ThreadLocal 本身并不存储线程的变量值,它只是一个工具,用来维护线程内部的 Map,帮助存和取变量。

    ThreadLocal 如何解决 Hash 冲突?

    与 HashMap 不同,ThreadLocalMap 结构非常简单,没有 next 引用,也就是说 ThreadLocalMap 中解决 Hash 冲突的方式并非链表的方式,而是采用线性探测的方式。所谓线性探测&#x

  • 相关阅读:
    Mybatis插入数据时 返回主键
    React 子组件state内数组修改页面不刷新问题
    React 配合echarts使用问题记录
    vue 项目启动报错
    React Ant design table表单与pagination分页配置
    React Cascader组件实现地址选择
    os常用指令
    React 页面间传参
    React Router配置
    react项目 npm run eject报错
  • 原文地址:https://www.cnblogs.com/javawxid/p/15644465.html
Copyright © 2011-2022 走看看