<i18n dev> RFR: 8261254: Initialize charset mapping data lazily
redestad at openjdk.java.net
Mon Feb 8 11:33:46 UTC 2021
On Mon, 8 Feb 2021 08:36:21 GMT, Alan Bateman <alanb at openjdk.org> wrote:
>> This patch refactor JDK internal charsets to initialize charset mapping data lazily when needed via holder classes. This means both a startup improvement in some cases, and possible throughput improvements for all DoubleByte-based Charsets.
>> Testing: tier1-3
> I wouldn't expect enumerating all charsets with Charset::availableCharsets to be too common but moving the data to holder class looks okay. The missing "final" in a few places was an oversight. The replacement of the foreach and method ref in getServicesCatalog with imperative code is disappointment but okay here.
I spotted usage of this in a real application. While they could work around it and remove the usage to gain an even larger startup win I figured I should do those that can't do so a favor, too.
More information about the i18n-dev