gpt4 book ai didi

autofac - 如何在Autofac中实现引用计数共享实例?

转载 作者:行者123 更新时间:2023-12-01 16:14:37 24 4
gpt4 key购买 nike

我有一个服务IService,多个组件都依赖该服务。组件的出现和消失取决于用户操作。

碰巧 IService 的实现成本很高,而我希望在所有组件之间共享 1 个实例。到目前为止一切顺利,我可以使用:

builder.RegisterType<ExpensiveStuff>().As<IService>().SingleInstance();

但是,我不希望ExppressiveStuff一旦建成就永远存在;我只希望当一个或多个组件引用它时它才存在。

Autofac 中有实现此目的的内置方法吗?

最佳答案

我认为您必须确保对这些依赖项的使用发生在 instance scope 范围内。 .

Orchard 项目可能是这里的灵感来源。他们使用一组工作单元范围; see the ShellContainerFactory.cs source file .

关于autofac - 如何在Autofac中实现引用计数共享实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11905879/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com