我正在使用Unity中可用的不同LifetimeManagers,并且想知道我们何时会使用ExternallyControlledLifetimeManager?有人可以给我一个真实的例子吗? MSDN doc说“LifetimeManager将弱引用保存到它的托管实例中”..
开发人员如何管理实例?何时应该去找这样的终身经理?您对如何以及何时使用它的想法对我和其他人来说都很有用。 谢谢!
答案 0 :(得分:11)
如果您要注册由其他框架或库创建的对象并且您无法控制其生命,例如由第三方库提供的单例,这可能很有用。
因为容器只保留弱引用,所以如果没有任何强引用,GC将删除该单例。 IMO,只有在无法管理实例的生命周期时才应使用它。