RFR: 8214712: Archive Attributes$Name.KNOWN_NAMES
Claes Redestad
claes.redestad at oracle.com
Sat Mar 16 00:43:28 UTC 2019
On 2019-03-15 19:06, Peter Levart wrote:
> On 3/15/19 5:14 PM, Claes Redestad wrote:
>> Hi Peter,
>>
>> thanks for reviewing!
>>
>> Interning arbitrary attribute names might have some unfortunate side-
>> effects,
>
> You mean if the number of different names would get larger and larger on
> a long-running JVM, the cache would grow without bounds?
Yes.
>
> I noticed that the Name constructor:
>
> public Name(String name) {
> this.hashCode = hash(name);
> this.name = name.intern();
> }
>
> ...interns the String name. Do interned strings have a weak cache or are
> they kept for the entire life of JVM?
I think you can think of them as only weakly referenced by the VM, so
yes, they will be GCd if no-one keeps them alive.
/Claes
More information about the core-libs-dev
mailing list