
SimpleDateFormat 非线程安全, 在阿里 Java 开发手册上推荐以下写法 ,可是这种写法参数是写固定的,而实际需要传入指定参数. 比如说只要显示年月日
private ThreadLocal
问题: 如何在调用或者初始化时候传入自定义参数.
1 Kaiv2 2019-12-24 17:52:31 +08:00 via Android 放到调用处啊 |
2 twirain 2019-12-24 17:57:10 +08:00 新建个类 |
3 chendy 2019-12-24 18:26:23 +08:00 format 是动态的,就不需要做这个 ThreadLocal 的优化了 或者做多个 ThreadLocal 保存各种要用到的 format |
4 SoloCompany 2019-12-24 21:29:01 +08:00 SimpleDateFormat 不是线程安全的这没错 问题是你为什么要重用他,不重用就不存在线程安全问题 |
5 jenschen 2019-12-24 21:44:33 +08:00 via iPhone ThreadLocal 是对每个线程复制一个值,来解决并发问题。直接用就可以了 |
6 lxk11153 2019-12-24 22:09:12 +08:00 org.apache.commons.lang3.time.FastDateFormat |
7 Raymon111111 2019-12-24 22:11:33 +08:00 如果是专门想解决 SimpleDateFormat 的问题 那答案是不用这个类, 有很多更好用的替代类 |
8 lxk11153 2019-12-24 22:12:16 +08:00 https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/time/package-summary.html DateFormatUtils DateUtils FastDateFormat 等 |
9 CStarter 2019-12-25 00:37:38 +08:00 via Android 这个类用的时候直接 new,不要复用。 非要复用的话,自定义类继承 Threadlocal,定义自己的方法 |
10 hzgit 2019-12-25 11:43:08 +08:00 ThreadLocal 初始化:静态方法 withInitial SimpleDateFormat 非线程安全:LocalDateTime/LocalDate/LocalTime |