I think that a no op dispose would make more sense.Put the burden on the
Export Provider author.



On Wed, Mar 4, 2009 at 2:27 PM, hammett <[email protected]> wrote:

>
> In MEF Exports come from ExportProvider. They might care for releasing
> or not, so implementing IDisposable on an Export is optional. That's
> why we cannot enable this pattern... at least that was the rationale
> at that time. Will check with the feature crew again. Thx
>
>
>
> On Wed, Mar 4, 2009 at 2:05 PM, Bill Barry <[email protected]>
> wrote:
> > hammett wrote:
> >
> > We went into similar ideas on MEF. The fact that it has an Export<>
> > class almost enable your code snippet. We do have a ReleaseExport on
> > the container
> >
> > var export = container.GetExport<IService>();
> > var service = export.GetExportedObject();
> > service.DoSomething();
> > container.ReleaseExport(export); // or if you have the guts: (service
> > as IDisposable).Dispose();
> >
> >
> > Sure that will work; I would prefer to be able to use the using pattern
> > (export here should implement IDisposable) because I think it makes it
> very
> > clear what is going on, but this seems to solve the problem.
> >
> > On Wed, Mar 4, 2009 at 1:36 PM, Bill Barry <[email protected]>
> wrote:
> >
> >
> > The generated proxies can be written in such a way that if the object is
> > disposed of in the finalizer instead of being explicitly disposed, an
> > exception could be thrown (at least I hope this could be possible while
> > the program is running in debug mode).
> >
> >
> > You cannot throw on finalizer. That can kill the finalizer thread.
> >
> > You could do it in a debugging mode (perhaps not DEBUG, but maybe a local
> > mode where you define a "CatchContainerMistakes" option), where you have
> VS
> > available (it would be horrid to ship such code, but when running it
> inside
> > of visual studio I don't think it would be that big of a deal).
> >
> > >
> >
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Castle Project Development List" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/castle-project-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to