当前位置: 代码迷 >> 综合 >> SimpleDateFormat 线程不安全引起的血灾
  详细解决方案

SimpleDateFormat 线程不安全引起的血灾

热度:115   发布时间:2023-10-21 11:54:42.0
遇到一个大数据的Excel导入,我的导入方法是:分割数组将多个较小的数组,使用多线程分别导入。
其中需要格式化日期,所以用到了SimpleDateFormat。
刚开始为了不频繁的 new,减小jvm内存。所以将此实例化放置在使用方法之外,作为类的成员变量使用。
但是我发现导入后的数据中的日期 和 Excel中对应不上。
后来才知道是这个问题引起的。
所以基础很重要啊!,哈哈
SimpleDateFormat dateFormat = new SimpleDateFormat(format);

 SimpleDateFormat 线程不安全引起的血灾

为了避免上述问题。我们需要在方法内实例化,最后我们把对象置为NULL 等待gc即可,若需要,也可手动回收。

  相关解决方案