DecimalFormat.format(double) in different threads
2022-09-01 10:27:34
我必须并行打印许多线程中的许多格式化十进制值。为了格式化十进制值,我使用由模式配置的。我知道来自java文档的警告:java.text.DecimalFormat
DecimalFormat
十进制格式通常不同步。建议为每个线程创建单独的格式实例。如果多个线程同时访问一种格式,则必须在外部同步该格式。
但我不知道此警告是否适用于我的方案:我在应用程序启动时配置一次(并将 存储在最终字段中)。之后,我只使用该方法。java.text.DecimalFormat
Formatter
format(double)
我想这样做的原因是:我不想在每次需要打印格式化数字时都通过创建新实例来损失性能。DecimalFormat
我看了一下代码,它看起来是线程安全的,但我不确定。DecimalFormat.format(double)
您能否确认DecimalFormat.format(double)
的使用最终是线程安全的,当不更改格式化程序的配置时,或者解释为什么它不是?