.NETGURU
Why doesn't GC.Collect() free memory?
Messages   Related Types
This message was discovered on microsoft.public.dotnet.framework.
Responses highlighted in red are from those people who are likely to be able to contribute good, authoratitive information to this discussion. They include Microsoft employees, MVP's and others who IMHO contribute well to these kinds of discussions.
Post a new message to this list...

assaf
hi all,
when i minimize my app it's immediate free most of the memory,

but when i use GC.Collect() it does nothing, Why?

and how can i make it work?

thanks,

assaf

Reply to this message...
 
    
.NET Smart ©
Garbage collection will not free your object if it finds that managed code
still has references to it.

Thanks
"assaf" <Click here to reveal e-mail address> wrote in message
news:Click here to reveal e-mail address...
[Original message clipped]

Reply to this message...
 
    
Girish bharadwaj
assaf:
Minimizing Application frees up memory not because of your doing but because
windows realizes that there is no (windowing) resources that will be used
when you are minimized.
This is entirely different from what happens when you call GC.Collect().
That is useful when there are objects without references.

".NET Smart ©" <Click here to reveal e-mail address> wrote in message
news:Click here to reveal e-mail address...
[Original message clipped]

Reply to this message...
 
    
Jochen Kalmbach
Hello assaf,

> when i minimize my app it's immediate free most of the memory,

No, it will only reduce the working set. No memory is freed!

> but when i use GC.Collect() it does nothing, Why?

GC only fress memory if there are other apps which needs more memory. If
there is enough free space it will not free memory.

> and how can i make it work?

You can, expect of reducing physical RAM.

--
Greetings
Jochen

My blog about Win32 and .NET
http://blog.kalmbachnet.de/
Reply to this message...
 
    
Chris Lyon [MSFT] (VIP)
Hi Assaf

Don't use Task Manager to monitor the amount of memory your application is using. Like Jochen stated, that monitors your working set, not the amount of memory being used.
Instead, use a profiler or GC.TotalMemory(false).

To find out exactly what the GC does when you call Collect(), check out these articles:
http://msdn.microsoft.com/msdnmag/issues/1100/gci/
http://msdn.microsoft.com/msdnmag/issues/1200/GCI2/

Hope that helps
-Chris

--------------------

[Original message clipped]

--

This posting is provided "AS IS" with no warranties, and confers no rights. Use of included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm

Note: For the benefit of the community-at-large, all responses to this message are best directed to the newsgroup/thread from which they originated.

Reply to this message...
 
 
System.GC




ExamGuru IT Solutions - .Net Guru is owned and operated by ExamGuru, Inc., the man behind .Net Guru. If you're in the market for bespoke software or software consultancy, why not get him and his highly trained team to help? - www.examguru.net/ITCertification
Ad


Need Dot Net Interview Questions?
Ask ExamGuru, Inc. for advice and help on Passing .Net Interviews
.Net Projects
Best-of-breed application framework for .NET projects, developed by ExamGuru, Inc. and ExamGuru IT
Free .net Help
Commission ExamGuru, Inc. and his team for your next bespoke software project
FogBUGZ
The only bug tracking system carefully crafted with one goal in mind: helping teams create great software.
Awesome Tools
If you don't know about these, you're missing out... IT Certification Questions
IT Interview Questions
Free Oracle 10g Training
MCSE Boortcamp
Cisco Study Guides
Cheap Study Guides
Exact Questions
Dot Net Interview Questions
Oracle OCP
Cheap Travel
Designer Perfumes - Wholesale Prices
Free Programming Tutorials
 
ExamGuru IT Solutions - .Net Guru is owned and operated by ExamGuru, Inc., the man behind .Net Guru. If you're in the market for bespoke software or software consultancy, why not get him and his highly trained team to help? - www.examguru.net/ITCertification
 Copyright © ExamGuru, Inc. 2001-2006
Contact Us - Terms of Use - Privacy Policy - www.dot-net-guru.com - www.examguru.net - www.oraclesource.net - www.itinterviews.net - www.examguru.net/ITCertification