I believe that I resolved this problem. The DTD that I use has multiple
ATTLIST entries for each ELEMENT. This is a documented leak reported by :
Erik Rydgren
Mandarinen Systems AB, Sweden
Having just one ATTLIST for each attribute per ELEMENT seems to eliminate
the leak.
Sean Radcliffe wrote:
> I am using xerces 1.4 with Win32. I am using the existing downloadable
> binaries. When I parse multiple times in the same process, memory is
> not relieved after each parse. As a test, I took the sample VC6
> project DOMPrint (DOMPrint.cpp), and simply looped the code between the
> parser creation and destruction as in:
> for (int ct = 0; ct < 1000; ct++)
> {
> DOMParser *parser = new DOMParser;
> ...
> parser.parse(...);
> ...
> delete parser;
> }
>
> This will slowly eat up more memory with each parse operation. When
> finished all 1000 iterations and the application exits, all memory is
> relieved. I need the parser to relieve memory at destruction of the
> parser (or sometime before application exit or
> XMLPlatformUtils::Terminate) because I need to run this application
> continuously as a service.
>
> What am I doing wrong? I hope this isn't a limitation...
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]