• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Use of finalize methods in WO
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Use of finalize methods in WO


  • Subject: Re: Use of finalize methods in WO
  • From: Chuck Hill <email@hidden>
  • Date: Thu, 21 Aug 2008 09:49:09 -0700


On Aug 21, 2008, at 8:47 AM, Nilton Lessa wrote:


On 21/08/2008, at 12:06, Alex Horovitz wrote:


On Aug 21, 2008, at 9:51 AM, Nilton Lessa wrote:

:-) In this report there are pearls like : "Webobjects is a framework in disuse". ...sigh....


In disguise??? Back when I was at NeXT we called it the WebObjects Framework. Not really much of a disguise if you have it in the f'n name.

Maybe I hadn't choosen the right word to translate their spetacular analysis: "Webobjects is a framework not being used anymore". And this conclusion comes from a large technology consulting company.

With a strong interest in the continued use of only the technology THEY consult on!


I have heard of lots of "reasons" to not use WO, but these guys are really desperate, ignorant, and reaching deep by analyzing the GC on a WO app! "A little knowledge is a dangerous thing." Perhaps they have been reading this http://www.ibm.com/developerworks/java/library/j-jtp01274.html

Finalizers are not your friend
Objects with finalizers (those that have a non-trivial finalize() method) have significant overhead compared to objects without finalizers, and should be used sparingly. Finalizeable objects are both slower to allocate and slower to collect. ...


If you must use finalizers, there are a few guidelines you can follow that will help contain the damage. Limit the number of finalizeable objects, which will minimize the number of objects that have to incur the allocation and collection costs of finalization. ...

Just for fun, I went look for uses of finalize() in WO. I found four:

1 WOSessionStore - called exactly once per instance per JVM run
2. EOClassDescription - called (IIRC) about once per entity per instance per JVM run
3. EOEditingContext - this will get called for every EC you create, it is needed to break object references and speed GC
4. WOAnyField - used so rarely I had not even heard of it and had to look it up


So it seems that WO follows the guidelines above. Their sauce is very, very weak. If that is the _worst_ point then can come up with against WO, then that is one of the strongest arguments _for_ using WO that have heard!

Perhaps they are using grep and seeing calls to methods like _finalizeInContext() which has _NOTHING_ to do with Java finalization.

Myself, I'd laugh in their face.


Chuck

--
Chuck Hill             Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
http://www.global-village.net/products/practical_webobjects







_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >Use of finalize methods in WO (From: Nilton Lessa <email@hidden>)
 >Re: Use of finalize methods in WO (From: Kieran Kelleher <email@hidden>)
 >Re: Use of finalize methods in WO (From: Simon McLean <email@hidden>)
 >Re: Use of finalize methods in WO (From: Nilton Lessa <email@hidden>)
 >Re: Use of finalize methods in WO (From: Alex Horovitz <email@hidden>)
 >Re: Use of finalize methods in WO (From: Nilton Lessa <email@hidden>)

  • Prev by Date: Re: D2W question
  • Next by Date: Re: D2W and regular (non EO) objects
  • Previous by thread: Re: Use of finalize methods in WO
  • Next by thread: Re: Use of finalize methods in WO
  • Index(es):
    • Date
    • Thread