轉自:
http://www.java265.com/JavaMianJing/202204/16506864173045.html
下文筆者講述ThreadLocal的簡介及使用場景簡介說明,如下所示
ThreadLocal簡介說明
ThreadLocal用于執行緒間資料隔離
ThreadLocal用于定義執行緒內部的變數,此變數只適用于執行緒本身
不在多執行緒之間共享
使用ThreadLocal也可實作執行緒安全
在一些原始碼讀寫中,我們經常看見ThreadLocal變數的使用,下文筆者將使用示例的方式講述ThreadLocal的用法
ThreadLocal使用示例
public class ThreadLocaDemo { private static ThreadLocal<String> localVar = new ThreadLocal<String>(); static void print(String str) { //列印當前執行緒中本地記憶體中本地變數的值 System.out.println(str + " :" + localVar.get()); //清除本地記憶體中的本地變數 localVar.remove(); } public static void main(String[] args) throws InterruptedException { new Thread(new Runnable() { public void run() { ThreadLocaDemo.localVar.set("java265.com-1"); print("======1"); //列印本地變數 System.out.println("after remove : " + localVar.get()); } },"A").start(); Thread.sleep(500); new Thread(new Runnable() { public void run() { ThreadLocaDemo.localVar.set(""java265.com-2""); print("======2"); System.out.println("after remove : " + localVar.get()); } },"B").start(); } }
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/469471.html
標籤:Java
