Description
The ICU4J DecimalFormat java docs have this to say about thread safety:
Starting with ICU 59, instances of DecimalFormat are thread-safe.
Under the hood, DecimalFormat maintains an immutable formatter object that is rebuilt whenever any of the property setters are called. It is therefore best practice to call property setters only during construction and not when formatting numbers online.
This wasn't the case when we originally started using DecimalFormat, so we have a number of ThreadLocal[DecimalFormat]'s through our codebase. We should remove these ThreadLocal's–makes the code cleaner and could potentially improve performance by removing any ThreadLocal overhead.