Enhancing parsing performance 2003-01-13 - By Jean Georges PERRIN
Hi,
Thanks for those who helped me with cloning...
I am a little surprised with performance. Maybe there are some basic things I am doing wrong.
I am parsing a 3 Kb XHTML file and it takes me about 4s, cloning the tree takes me roughly a ridiculous amount of time (10ms). This on an Athlon XP 1800+ running XP (sure I could switch to Linux but it is not planned for now :) ).
My code for parsing: protected void load () { DOMParser parser;
try { parser = new DOMParser(); } catch (Exception e) { log.severe ("Error: Unable to instantiate parser"); return; }
try { parser.parse(m_file.toURI().toString()); m_document = parser.getDocument(); } catch (SAXParseException e) { // ignore } catch (Exception e) { String msg; msg = ("Error: Parse error occurred, " + e.getMessage()); if (e instanceof SAXException) { e = ((SAXException)e).getException(); } msg += '\n' + e.toString(); log.severe (msg); } }
Questions: 1/ is static'ing my parser will enhance the process? 2/ can I "pre" create some objects I can reuse? 3/ are there some eventual verification I can turn off?
My code for cloning: public Object clone() { XHTML11Window win = new XHTML11Window(m_file); win.m_document = new DocumentImpl(); win.m_document.importNode(m_document.getDocumentElement(), true);
return win; }
I haven't checked that they really were cloned, but it looks as if they were...
Any tips are more than welcome!
Jean Georges PERRIN
--------------------------------------------------------------------- To unsubscribe, e-mail: xerces-j-user-unsubscribe@(protected) For additional commands, e-mail: xerces-j-user-help@(protected)
|
|