String interning (WAS: SAX2/Java: Towards a final form)

David Brownell david-b at
Wed Jan 12 20:36:14 GMT 2000

Miles Sabin wrote:
> > > [snip: table mapping to intern'd Strings]
> > > Even tho' this only requires one java-intern for each
> > > distinct name it still provides plenty of opportunities for
> > > synchronization collisions.

So Miles, if you prefer the occasional synchronization issue
to the routine method invocation overhead, use a parser that
obliges you.  (Yes, I'm assuming SAX2 doesn't mandate any
interning, just exposes whether or not it's done.)

Though I daresay you'll find that the synchronization isn't
usually measurable, while your evidently preferred alternative
(lots of String.equals calls) will consistently show up as a
performance problem.  At least that's been the case when I've
made such measurements.

- Dave

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: or CD-ROM/ISBN 981-02-3594-1
Please note: New list subscriptions now closed in preparation for transfer to OASIS.

More information about the Xml-dev mailing list