我应该在Simple Injector中使用Singleton注册吗?

时间:2019-05-23 17:39:48

标签: dependency-injection inversion-of-control simple-injector

在我的注册表中,我将许多事物注册为Singleton

我这样做是因为它们都是线程安全的并且没有状态。因此,内存中的一个实例很好。

对于需要上下文/状态的类型,我也使用AsyncScoped生活方式,但与我拥有的单例注册数量相比,它们很少而且相差甚远。

将线程安全的无状态类型注册为单例有什么问题吗?

1 个答案:

答案 0 :(得分:1)

这实际上是一个很难回答的问题。您可以应用两种通用的DI Composition Models来构造依赖关系图:

两个模型都有其优点和缺点,但是只有当您整体应用环境成分模型时,您才可以将组件注册为Singleton。

我开始写博客介绍这两个模型here