何时使用ExternallyControlledLifetimeManager?

Abd*_*oof 9 .net asp.net-mvc enterprise-library unity-container enterprise-library-5

我正在使用Unity中可用的不同LifetimeManagers,并想知道我们何时会使用ExternallyControlledLifetimeManager?有人可以给我一个真实的例子吗?MSDN文档说"LifetimeManager 对其托管实例持有弱引用 ".

开发人员如何管理实例以及何时应该去找这样的终身经理?您对如何以及何时使用它的想法对我和其他人来说都很有用.谢谢!

ono*_*nof 11

如果您要注册由其他框架或库创建的对象并且您无法控制其生命,例如由第三方库提供的单例,那么它可能很有用.

由于容器仅保留弱引用,因此如果没有任何强引用,GC将删除该单例.IMO,只有在无法管理实例的生命周期时才应使用它.