Wed May 16 17:28:00 GMT 2001
> From: Tom Tromey [ mailto:email@example.com ]
> Right now String.substring() always creates a reference to the old
> string's data. I wonder if that is always what we want. I think
> perhaps if the old String is very large and the new substring is very
> small, then we might consider making a copy.
That will have the added advantage that the collector won't have to ever
look at the new string. That matters if it's very long-lived. I have no
idea how often that happens in practice.
> Or maybe for very large
> Strings we could consider playing some game involving weak references?
I suspect that it's almost always cheaper to copy a short string then to
generate a weak reference.
> Or maybe this is a nonissue -- maybe people don't make huge Strings
> often enough for it to be worthwhile.
> I'm not aware of any data that would help us make these sorts of
> decisions. Bummer.
Neither am I.
More information about the Java