Nicolas Wack wrote:
I'm watching the memory consumption with 'top' (that's the reason for
the call to sleep)
However if I change the allocation to new float[] instead of new Test
and then free it, it gets directly freed. (see attached file)
What do you mean by 'directly freed'?
What's weird is that if I launch the original program a second time
while the first already has supposedly freed its memory, it eats
everything and bring my box to its knees, killing most of the processes
that use memory (so I guess the memory is not freed at all).
the memory is not returned to the OS until the program terminates.
Also, top tells me that the whole memory stays resident (which means it
doesn't even return to the program's free memory pool, am I right?)
No.
This is not a gcc question, but a system/runtime library question. You
appear to be confused about heap allocation. Ask in a more suitable
forum (or search the web for 'malloc heap allocation' and similar terms).
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery LLC
nathan@xxxxxxxxxxxxxxxx :: http://www.planetfall.pwp.blueyonder.co.uk