On Apr 12 2011, at 12:10 , Ulf Zibis wrote:

> Am 12.04.2011 20:27, schrieb Mike Duigou:
>> This change has been previously proposed but the constants were to be 
>> defined in Charset which was deemed to have too high a static initialization 
>> cost. Using a separate class, Charsets, means that the cost for 
>> initialization is only borne by those who use the class--there's virtually 
>> no incremental cost to platform initialization.
> 
> I can't agree with that, because you statically invoke e.g. 
> Charset.forName("US-ASCII"), which causes the expensive initialization of the 
> Charset class.

It's expected that by the time Charsets is referenced that Charset will already 
be initialized. Charset is initialized during the setup of 
System.out/System.err or earlier.

> Please note my long waiting patches:
> Bug 100091 - No system start for file.encoding=x-SJIS_0213
> Bug 100092 - Speed-up FastCharsetProvider
> Bug 100095 - Avoid 2-step lookup in sun.nio.cs charset providers
> Bug 100098 - Make sun.nio.cs.* charset objects light-weight

Unfortunately I don't know anything about the status of these issues.

Mike

Reply via email to