How does Garbage collector(GC) works in .net
Answer Posted / vikas rawat
Garbage CollectorMark-sweep algorithm)
If there is any memory defeciency then only GC will called
by CLR.
Low priority thread its run on its own thread.
It calls JIT compiler.
It maintains Apps_route table there all the objects are
maintained.those will seen by garbage collector
3 types of objects:
1. Short Leaved Objects/young objects
 Objects which are less referenced.
2. Long Leaved Objects/Older Objects
Objects which referenced more
3. Oldest Objects
Objects which are globally accessed
It maintain these objects in to 3 Generations:
Gen0 Gen1 Gen3
promote to --> promote to -->
contains object1 contains object2 contains object3
First goes to Gen-0::
If any object is used then it swaps/promote that object to
Gen-1.otherwise it destroys that object immediately.
Same will happen for Gen-1
Still the memory is adequate then it goes to Gen-2
Still memory is adequate it raise exception
memory insufficient exception
This is called as Non-Deterministic Finalization.
GC destroys only Managed Objects only not UNManaged Objects
Determenistic Finalization queue.
In this
Supress Finalize:: in this destructors will not CALLED
UnManaged Objects:
1.ADO.Net
2.Networking/Socket Programming.
3.IO(File Handling)
4.RCW / CCW / PIS
All the classes can have
 Close()/dispose()
We have to call them after completion objects usage.
Is This Answer Correct ? | 17 Yes | 5 No |
Post New Answer View All Answers
What is the difference between CC and BCC?
What is _viewstart?
What setting must be added in the configuration file to deny a particular user from accessing the secured resources?
Are cookies client side or server side?
How does asp net store session ids by default?
What is the difference between session and application?
How we implement web farm and web garden concept in asp.net?
How do cookies work?
What is the extension of master page in asp.net?
Where sessions are stored?
How does viewstate work?
How to create a db connection at one place/page so that we can use that connection for all pages/forms/windows.what r the steps ned to be performed if question not clear,let me know
How to store checkbox value in database in asp.net mvc? : Asp.Net MVC
What is difference between viewstate and session in asp net?
Explain Apache web servers ? How can you get ASP.NET running in Apache web servers - why should you do this?