激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務(wù)器之家 - 編程語言 - JAVA教程 - Java ThreadLocal 線程安全問題解決方案

Java ThreadLocal 線程安全問題解決方案

2020-06-19 11:35夏中偉 JAVA教程

這篇文章主要介紹了Java ThreadLocal 線程安全問題解決方案的相關(guān)資料,需要的朋友可以參考下

一、線程安全問題產(chǎn)生的原因

線程安全問題都是由全局變量及靜態(tài)變量引起的

二、線程安全問題

SimpleDateFormate sdf = new SimpleDateFormat();使用sdf.parse(dateStr);sdf.format(date);在sdf內(nèi)有一個(gè)對Caleadar對象的引用,在源碼sdf.parse(dateStr);源碼中calendar.clear();和calendar.getTime(); // 獲取calendar的時(shí)間

Java ThreadLocal 線程安全問題解決方案

如果 線程A 調(diào)用了 sdf.parse(), 并且進(jìn)行了 calendar.clear()后還未執(zhí)行calendar.getTime()的時(shí)候,線程B又調(diào)用了sdf.parse(), 這時(shí)候線程B也執(zhí)行了sdf.clear()方法, 這樣就導(dǎo)致線程A的的calendar數(shù)據(jù)被清空了;

ThreadLocal是使用空間換時(shí)間,synchronized是使用時(shí)間換空間

使用ThreadLocal解決線程安全:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class ThreadLocalDateUtil {
  private static final String date_format = "yyyy-MM-dd HH:mm:ss";
  private static ThreadLocal<DateFormat> threadLocal = new ThreadLocal<DateFormat>();
 
  public static DateFormat getDateFormat()
  {
    DateFormat df = threadLocal.get();
    if(df==null){
      df = new SimpleDateFormat(date_format);
      threadLocal.set(df);
    }
    return df;
  }
  public static String formatDate(Date date) throws ParseException {
    return getDateFormat().format(date);
  }
  public static Date parse(String strDate) throws ParseException {
    return getDateFormat().parse(strDate);
  }
}

使用synchronized解決方案:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class DateSyncUtil {
  private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    
  public static String formatDate(Date date)throws ParseException{
    synchronized(sdf){
      return sdf.format(date);
    }
  }
   
  public static Date parse(String strDate) throws ParseException{
    synchronized(sdf){
      return sdf.parse(strDate);
    }
  }
}

感謝閱讀本文,希望能幫助到大家,謝謝大家對本站的支持!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲一区二区三区高清 | 欧洲黄视频 | 久久成人亚洲 | 在线视频欧美一区 | 午夜精品成人一区二区 | 天天撸日日夜夜 | 久久精品中文字幕一区 | 成人福利在线 | 国产精品久久久久国产精品三级 | 国产一区精品在线观看 | 精品国产一区二区三区四 | 黄色网址免费在线播放 | 激情av在线| 午夜视频福利 | 亚洲 综合 欧美 动漫 丝袜图 | 国产高潮好爽好大受不了了 | 欧美淫交 | 国产亚洲精品久久久久久久久久 | 曰韩一级片 | 中文字幕在线观看精品 | 羞羞电影在线观看 | 激情大乳女做爰办公室韩国 | 免费毛片视频 | 日韩视频一区 | 欧美成人精品h版在线观看 久久久久久三区 | 欧美一级淫片免费视频黄 | 国产精品成人av片免费看最爱 | 九色在线78m| 日日做夜夜操 | 视屏一区| 狠狠操夜夜爱 | 久久亚洲精品国产一区 | 国产一级毛片网站 | 久久精品国产久精国产 | 久久国产一二区 | 一区二区三区欧美在线观看 | 国产精品免费一区二区 | 亚洲极色| 亚久久| 日本成人一区二区三区 | 成人做爰www免费看 成人午夜视频免费看 |