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

Reply via email to