A
Anibal Acosta
I was posted this in other newsgroup but i never see in the list.
-----------------------------------------------------------------
My problem is...
I have an application (Console Application). Every second it use more and
more memory, with the .NET memory profiler I see that thousands of (Byte,
Regex, String etc) instances I have in memory.
But, when I run the GC.Collect and the the GC.WaitForPendingFinalizers
manualy, the memory is released and the number of instances of the classes
mentioned are redused to 10, 5, 15 etc
My Question is, If I have a memory leak, no matter if I run or nor the
GC.Collect and the GC.WaitForPendingFinalizer the memory should not be
release, because in teory is referenced for any other instance.
Assuming that I haven't a memory leak, what is my problem?
Why the GC wait for a manual run of GC.WaitForPendingFinalizers to release
the memory?
I have a windows 2003 multiprocessor with 512 of RAM.
If I not run manually the GC.WaitForPendingFinalizer the use of memory of my
app go to 400 MB and the virtual memory go to 700 MB, after it, a "low disk
space" messsage appear next to the clock in the task bar. I think that is
the same message "Low virtual memory" of the windows 2000.
Thanks a lot.
AA
-----------------------------------------------------------------
My problem is...
I have an application (Console Application). Every second it use more and
more memory, with the .NET memory profiler I see that thousands of (Byte,
Regex, String etc) instances I have in memory.
But, when I run the GC.Collect and the the GC.WaitForPendingFinalizers
manualy, the memory is released and the number of instances of the classes
mentioned are redused to 10, 5, 15 etc
My Question is, If I have a memory leak, no matter if I run or nor the
GC.Collect and the GC.WaitForPendingFinalizer the memory should not be
release, because in teory is referenced for any other instance.
Assuming that I haven't a memory leak, what is my problem?
Why the GC wait for a manual run of GC.WaitForPendingFinalizers to release
the memory?
I have a windows 2003 multiprocessor with 512 of RAM.
If I not run manually the GC.WaitForPendingFinalizer the use of memory of my
app go to 400 MB and the virtual memory go to 700 MB, after it, a "low disk
space" messsage appear next to the clock in the task bar. I think that is
the same message "Low virtual memory" of the windows 2000.
Thanks a lot.
AA