第 5-4 课:ThreadLocal 详解 + 面试题
生活随笔
收集整理的這篇文章主要介紹了
第 5-4 课:ThreadLocal 详解 + 面试题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
什么是 ThreadLocal?
ThreadLocal 誕生于 JDK 1.2,用于解決多線程間的數據隔離問題。也就是說 ThreadLocal 會為每一個線程創建一個單獨的變量副本。
ThreadLocal 有什么用?
ThreadLocal 最典型的使用場景有兩個:
- ThreadLocal 可以用來管理 Session,因為每個人的信息都是不一樣的,所以就很適合用 ThreadLocal 來管理;
- 數據庫連接,為每一個線程分配一個獨立的資源,也適合用 ThreadLocal 來實現。
其中,ThreadLocal 也被用在很多大型開源框架中,比如 Spring 的事務管理器,還有 Hibernate 的 Session 管理等,既然 ThreadLocal 用途如此廣泛,那接下來就讓我們共同看看 ThreadLocal 要怎么用?ThreadLocal 使用中要注意什么?以及 ThreadLocal 的存儲原理等,一起來看吧。
ThreadLocal 使用
ThreadLocal 基本使用
ThreadLocal 常用方法有 set(T)、get()、remove() 等,具體使用請參考以下代碼。
ThreadLocal threadLocal = new ThreadLocal(); // 存值 threadLocal.set(Arrays.asList("老王", "Java 面試題")); // 取值 List list = (List) threadLocal.get(); System.out.println(list.size()); System.out.println(thre總結
以上是生活随笔為你收集整理的第 5-4 课:ThreadLocal 详解 + 面试题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何生成高性能的短链接?
- 下一篇: 实战:分布式锁详解与代码