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


Please Help Members By Posting Answers For Below Questions

How can you handle errors in Web API?

593


Why mvc is faster than asp.net? : Asp.Net MVC

530


Is there any property names “isnavigating”?

581


Which method is used to force all the validation controls to run?

553


8. Why do you want to work here?

1480






Explain the code Access Security (CAS) in .net Framework?

684


Why mvc is better than asp.net? : Asp.Net MVC

471


Why do we need a web application session?

510


i want to implement grid view value in paypal site. so how to create this code in asp.net with C#

1412


What is the use of session?

525


What are the benefits of Razor View?

538


Explain the difference between debug.write and trace.write? When should each be used?

558


What is the purpose of using MVC programming pattern in ASP.NET?

557


What are the session variables?

516


Why Unload event of MasterPage Calls first in ASP.net ?

588