Use performance counter to find the leak.
Process/Virtual Bytes
Process/Private Bytes
.net CLR Memory/# Bytes in all Heaps
.net CLR Memory/% Time in GC
.net CLR Memory/Large Object Heap size
.net CLR Loading/Bytes in Loader Heap
.net CLR Loading/Current Assemblies
if the private bytes keep increasing but # Bytes in all Heaps do not, you’re
likely looking at a native memory leak, but if # Bytes in all heaps increase
at the same rate as private bytes your leak is likely in managed code.
if you see a steady increase of virtual bytes but your private bytes stay
pretty steady, your application probably has a problem where it is reserving
a lot of virtual memory that it’s not using.
Bytes in Loader Heap and Current Assemblies should stay fairly constant once
the process has started up and all app domains are loaded. If this keeps
continuously increasing it is very probable that you have an assembly leak
"Niron kag" wrote:
Hi,
I have a windows service, which is currently installed, on my local computer.
The problem is that when I look at the task manager, I see that the “Mem
Usage”, become bigger and bigger.
Has someone any idea why this happens?
Anyway to solve this problem I thought to stop the service and start it
programmaticall y when it’s “Mem Usage” is too big.
Is it possible?
--
WBR,
Michael Nemtsev :: blog:
http://spaces.msn.com/laflour
"At times one remains faithful to a cause only because its opponents do not
cease to be insipid." (c) Friedrich Nietzsche