How does Garbage collector(GC) works in .net
Answer Posted / suresh.gv
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 | 4 No |
Post New Answer View All Answers
How to use multiple scriptmanager controls in a web page?
Explain transparent caching with aop?
How we implement the multiple paypal value with gridview in my website and how we make a payment through Credit Card.
Differentiate between a page theme and a global theme?
How can you handle unmanaged code exceptions in asp.net?
What is the difference between the asp and asp.net?
What is Forms Authentication in ASP.NET?
What are the modes of updation in an updatepanel? What are triggers of an updatepanel?
Explain the difference between asp & asp.net.
Explain the difference between debug.write and trace.write?
Why mvc is better than asp.net? : Asp.Net MVC
Distinguish between Server-side and Client-side code?
Is asp.net and .net same?
What type of code, client-side or server-side, is found in a code-behind file of a Web page?
What are the page life cycle events?