[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: SAX2: Namespace proposal
[ interning, not sax2 or namespaces ] David Megginson wrote: > > Joe Lapp <jlapp@w...> writes: > > > Using Java String interning, how do you guys guarantee performance > > in any of the DOM Element get*() methods that take Strings? Do you > > require that the app intern the string before passing it in? Do you > > try to make the methods smart so that if they're interned, you get > > performance, and if they aren't, you get a bit more of a penalty > > (for having done the intern check first)? Lotsa questions ... the optimization isn't _specifically_ for DOM. Note that starting sometime around JDK 1.1.6 or so, String.equals() tests for equality before it does much else; a classic trick that someone omitted in JDK 1.0, perhaps to ensure that the other code paths got fully debugged (or perhaps just a performance bug). What this means is that if you consistently use a string returned by a SAX parser (interned either localy or, for bigger win, globally) you'll detect the "equals == true" case much more quickly, on average. > Do you make them dumb so > > that if you forgot to intern, you don't get anything? Or would one > > always intern these externally provided Strings within the method? > > With the DOM, I think, the biggest issue is not performance but memory > usage -- you do not want 500 separate "div2" strings floating around > in the same tree. Interning is much more obviously essential for a > tree API than it is for a streaming API. And the CPU performance improvement is "on average"; yes, the memory performance improvement is a bit more direct in that scenario! - Dave xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i... Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1 To unsubscribe, mailto:majordomo@i... the following message; unsubscribe xml-dev To subscribe to the digests, mailto:majordomo@i... the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@i...)
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|