[EMAIL PROTECTED] wrote: > Dear Dave > > Thanks for your reply. Please find my comments below. > >> [EMAIL PROTECTED] wrote: ... > > Unfortunately, SAX is not an option because of the compatibility to > existing code. > My question was that what happens to the memory allocated for the previous > message parsing, and how I can delete them if I have to. > ... >> Are you sure your application isn't leaking memory somewhere? Normally, >> memory for a DOM instance is allocated in large blocks, so fragmentation >> should not be a problem. It might be, however, if your code is leaking. > > Maybe, but I would call it a feature ^^. > > There is still a problem without memory leaking, I think. > Let's assume that the program is increasing memory space continusly. > Let me clarify this by small example. > > loop: > 1: get XML message > 2: create a parser > 3: parse > 4: do my job > 5. delete a parser. > 6. add small data to history list. Let's assume this requires 10B in > dynamic memory > > > So we allocated 160KB in step 2 and deallocated it in step 5, but memory > used in step 6 may use the space returned by step 5. Then the same memory > space cannot be used for next iteration. By this fragmentation, OS will > not find any more big space for step 2 soon. Again this is only a guess. Yes, I'm aware of how memory can become fragmented, but I doubt that's the problem, unless your application is leaking memory, or you're keeping _lots_ of small objects around. But if that's the case, there's nothing anyone here can help you with, since we're not in control of your run-time's memory management implementation and you haven't shown us any source code to see if there are leaks.
Dave
