G
Guest
Hi,
I've seen a strange behavior with a C# application on Windows CE 5.0. As you
probably already know, in Windows CE 5.0 we only have 32 MB of memory. I
create multiple instance of a really big object (1 MB of Data). My free
virtual memory for the process after all these allocations is 12 MB. Then the
destructor is called for each instance of the object. I supose that it means
that the memory is freed. I should now have approximatly 30 MB of free
virtual memory for the process but I only have 12 MB.
What is the problem here? It seams that when managed code temporarly needs
more memory, it never gives that memory back to the OS. Am I right? I also
seen a lot of 64 kB commit in the memory map, does it means that when the
managed heap is full it asks for a 64 kb block to the OS?
Where can I find more information on how the memory management is done for a
manged program under Windows CE 5.0?
Thanks a lot for your help,
I've seen a strange behavior with a C# application on Windows CE 5.0. As you
probably already know, in Windows CE 5.0 we only have 32 MB of memory. I
create multiple instance of a really big object (1 MB of Data). My free
virtual memory for the process after all these allocations is 12 MB. Then the
destructor is called for each instance of the object. I supose that it means
that the memory is freed. I should now have approximatly 30 MB of free
virtual memory for the process but I only have 12 MB.
What is the problem here? It seams that when managed code temporarly needs
more memory, it never gives that memory back to the OS. Am I right? I also
seen a lot of 64 kB commit in the memory map, does it means that when the
managed heap is full it asks for a 64 kb block to the OS?
Where can I find more information on how the memory management is done for a
manged program under Windows CE 5.0?
Thanks a lot for your help,