Hi Tony, hi Richard,
i think it's a security feature,
otherwise you can create a rogue encoder that will be used for a Charset like 
UTF-8.

regards,
Rémi 


----- Mail original -----
> De: "Richard Warburton" <richard.warbur...@gmail.com>
> À: "Tony Printezis" <tprinte...@twitter.com>
> Cc: "core-libs-dev" <core-libs-dev@openjdk.java.net>
> Envoyé: Jeudi 25 Février 2016 21:57:56
> Objet: Re: Frequent allocations / promotions of StringCoding$String{Encoder,  
> Decoder} objects
> 
> Hi,
> 
> Finally, the StringCoding coder c'tor allocates a new Charset coder
> > (Charset{Encoder,Decoder}) for the specific charset. But such Charset
> > coders already seem to be cached in ThreadLocals in the
> > sun.nio.cs.ThreadLocalCoders class. Any reason why we cannot re-use those?
> > (Oh, and also note that this cache does not use SoftReferences, which makes
> > their use by the StringCoding class even more perplexing.)
> >
> 
> +1. I was confused by this behaviour when I submitted a String related
> patch a while back but never got round to submitting a fix. It actually
> means that in String decoding often passing the charset to use by String is
> faster than passing it Charset object - counter-intuitive and less typesafe.
> 
> regards,
> 
>   Richard Warburton
> 
>   http://insightfullogic.com
>   @RichardWarburto <http://twitter.com/richardwarburto>
> 

Reply via email to