.NetCF-processsize grows while .NetCF Remote Performance Monitorshows a smaller processsize

  • Thread starter Thread starter Carsten Unterberg
  • Start date Start date
C

Carsten Unterberg

hey everyone,

i've got a strange problem with my current project. i've a .netcf
application which communicate with a native c++ application via
windows messages. during runtime, the size of the .netcf-process grows
in the windows mobile 6.0 taskmanager up to 10 mbytes. i checked that
with the .NetCF Remote Performance Monitor from the .NetCF PowerToys.
the performancecounter 'CG-Peak Bytes Allocated (native + managed)
shows a more real value which is much smaller and realistic (around
2.3 mbytes).

maybe someone knows which program shows the correct values for the
process size.

best regards

Carsten Unterberg | Test-Framework
http://test-framework.blogspot.com/
 
hey everyone,

here are some additional information.

i'm sending with a .NETCF-application via
Microsoft.WindowsCe.Forms.MessageWindow.SendMessage() WM_COPYDATA-
messages to a native applicaiton. everythink works fine, but only the
sent messages remains in the heap of .NETCF-application.
as i said before, the .NETCF Remote Performance Monitor shows the
corrent count of (managed and unmanaged) bytes for my .NETCF-
application. the only thing which he not shows seems to be the heap.
if i use the Remote Heap Walker, in the heap of my .NETCF-application
are countless entries of the same blocksize (528 bytes, which is the
size of a WM_COPYDATA-message) with the flag 'FIXED'. i also used the
Toolhelp32-API to count all these heapentries. the number of these
heapentries increases lineraly as the number of the sent messages.
additionally it is important to know, that i use a seperate thread
with a generic queue to hold and send these messages. after sending,
the messages will be removed from the queue.
during runtime, my .NETCF-application grows in memory more and more.
is this behavior a bug or a feature and/or how could i prevent it?
up to now, it tried to manipulate the heap with GetProcessHeap()-,
HeapDestroy()- and HeapFree()- from the WindowsCE-API - without
success.

best regards,

Carsten Unterberg | Test-Framework
http://test-framework.blogspot.com/
 
Back
Top