G
Guest
Hi!
We have a singlecall server application that runs inside a .net service. The
service uses two System.Threading.Timer's to call to methods every 10
seconds. Something like this:
Dim ad as new AlarmsData
ad.handleAlarm( )
ad = nothing
The application doesn't seem to release objects created. After 24 hours the
total amount of memory allocated is about 400 MB.
Looking at the performance counters for .net memory
Total allocated Bytes 386 000 000
Heapsize gen 2 - 381 400 000
I think this tells me that I have a large number of long living objects
still references by the GC. Manual GC.Collect doesn't do anything.
The HandleAlarms call only does a couple of database calls (using enterprise
library) and since the AlarmsData object itself goes out of scope at the end
of the timer method, I'd figured that it would be destroyed?
Any pointers?
Thanks
Johan
We have a singlecall server application that runs inside a .net service. The
service uses two System.Threading.Timer's to call to methods every 10
seconds. Something like this:
Dim ad as new AlarmsData
ad.handleAlarm( )
ad = nothing
The application doesn't seem to release objects created. After 24 hours the
total amount of memory allocated is about 400 MB.
Looking at the performance counters for .net memory
Total allocated Bytes 386 000 000
Heapsize gen 2 - 381 400 000
I think this tells me that I have a large number of long living objects
still references by the GC. Manual GC.Collect doesn't do anything.
The HandleAlarms call only does a couple of database calls (using enterprise
library) and since the AlarmsData object itself goes out of scope at the end
of the timer method, I'd figured that it would be destroyed?
Any pointers?
Thanks
Johan