Agreed that it is important. Was just an addition as to the seperation of the domain of reality and the abstract domain provided by the spec (since specs are getting thrown around).
BTW: I think the CLR should also be smart enough to handle the empty finalizer case :) Even if it didn't the C# compiler should ... Cheers, Greg On 9/6/07, Steve Johnson <[EMAIL PROTECTED]> wrote: > On 9/6/07, Greg Young <[EMAIL PROTECTED]> wrote: > > > > As such a compliant CLR could run finalizers (even when they are > > empty) and it would in fact run a finalizer on every object (excluding > > unboxed value types of course). It is an *implementational detail* > > that the MS production CLR in its current state has an optimization to > > recognize that the finalizer does nothing and therefore does not run > > it. > > > > Exactly, it is indeed an implementation detail. But this is one > implementation detail that we all need to know. From reading the specs, you > would think that you could declare an empty finalizer with no perf hit, but > we all know that this is not true. Declaring even an empty finalizer incurs > a significant perf penalty. > > -- > Steve Johnson > > =================================== > This list is hosted by DevelopMentor(r) http://www.develop.com > > View archives and manage your subscription(s) at http://discuss.develop.com > -- Studying for the Turing test =================================== This list is hosted by DevelopMentorĀ® http://www.develop.com View archives and manage your subscription(s) at http://discuss.develop.com