Why is it preferred to not use finalize for clean up, DOT NET Programming

Assignment Help:

The Problem with finalize is that the garbage collection has to make 2  rounds in order to remove the  objects which have finalize methods.

The figure below will make things clear regarding the two rounds of garbage collection rounds performed for the objects having finalized methods.

In this scenario there are 3 objects Object1, Object2 and Object3. The Object2 has the finalize method overridden and remaining objects do not have the finalize method overridden.

Later  when garbage collector runs for the first time it searches for the objects whose memory has to free. He can see 3 objects but it only cleans the memory for Object1 and Object3.The Object2 it pushes to the finalization queue.

Now garbage collector runs for the second time. He views that  there are no objects to be released and then checks for the finalization queue and at this moment it clears object2 from the memory.

So if you notice that object2 was released from memory in the second round and not first. That's why the best method is not to write clean up Non.NET resources in Finalize method rather use the DISPOSE.

 

2474_Finalize.png


Related Discussions:- Why is it preferred to not use finalize for clean up

I want web social apps and site, I want Web Social Apps/ site Project De...

I want Web Social Apps/ site Project Description: I need a web designer have a specific unique project in mind.  Skills required are C# Programming, Cocoa, Mac OS, iPhone,

Describe in biref about object-oriented programming, What is object-oriente...

What is object-oriented programming (OOP)? OOP is a method to develop logical modules, such as classes that contain properties, methods, fields, and events. An object is formed

Ui design for a website, Project Description: I have a website that I ha...

Project Description: I have a website that I have prepared, but I would like someone to make it look nicer. Most of the functionality is there, but I need help with design which

List advantages of binding data to controls, Question: (a) List three ...

Question: (a) List three advantages of binding data to controls. (b) The Repeater control uses templates to control formatting. Define the five types of templates supporte

What is a static constructor, What is a static constructor? Static cons...

What is a static constructor? Static constructors are introduced with C# to initialize the static data of a class. CLR calls the static constructor before the initial instance

Full time contractual programming position, Project Description: This is...

Project Description: This is a full time contractual role seeking for a sports advisory service. We are data insights consultancy specializing in sports. We consult to a number

Ewdedewdew, ssasadsdsdsddewdewdwedewdewdewededewdewdewdewdewdewdewdwedssa s...

ssasadsdsdsddewdewdwedewdewdewededewdewdewdewdewdewdewdwedssa sdedwdew dedewdew ewdewdew ewdewdew dedew ewdew ewd ewde ew ew

I am looking for someone to work on website, I am looking for someone to wo...

I am looking for someone to work on his website via team viewer. First I would want you to fill up this. On a scale from 1 - 10 please grade the following skills- C# - AJ

I need c# api for bitfinex, I need C# API for bitfinex Project Descripti...

I need C# API for bitfinex Project Description: Hi, I need a developer to build a library in C# that connects to the bitfinex API. The library must implement all the authenti

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd