主要是共享工具類的使用,如果是一種競爭改變共享屬性物件的話,還是需要同步**塊,鎖機制
1.共享時間類轉換
public class dateutil catch (parseexception e)
return date;
}}public static void main(string args) );
}service.shutdown();
}
改變後
public class dateutil catch (parseexception e)
return date;
}}
2. 數字加10的工具類
public class numutil catch (interruptedexception e)
return addnum + 10;
}}public static void main(string args) );
}service.shutdown();
}
改變後
public class numutil catch (interruptedexception e)
return addnumthreadlocal.get() + 10;
}}
ThreadLocal用法簡單示例
package com.learn.test author liuqi date 2020 3 4 23 23 desc 注 threadlocal和synchronized 相比前乙個以空間取代時間,每個訪問同乙個變數的執行緒都擁有該變數的乙個副本 後乙個以時間代替空間,多個執行緒訪問會進行排隊 ...
ThreadLocal的非資料安全用法
啟發於同學處理的bug,他遇到的問題是 有三颱tomcat伺服器,其中有一台tomcat伺服器出現這種情況 乙個使用者a登入了系統,如果有新的使用者b接著登入系統,會把使用者a的登入資訊給替換成新使用者b的資訊。這造成無緣無故看到是別人的暱稱和頭像。原因 這個老舊系統裡面使用了threadlocal...
ThreadLocal用法詳解和原理
一 用法 threadlocal用於儲存某個執行緒共享變數 對於同乙個static threadlocal,不同執行緒只能從中get,set,remove自己的變數,而不會影響其他執行緒的變數。1 threadlocal.get 獲取threadlocal中當前執行緒共享變數的值。2 threadl...