在我的注册表中,我将许多事物注册为Singleton
。
我这样做是因为它们都是线程安全的并且没有状态。因此,内存中的一个实例很好。
对于需要上下文/状态的类型,我也使用AsyncScoped
生活方式,但与我拥有的单例注册数量相比,它们很少而且相差甚远。
将线程安全的无状态类型注册为单例有什么问题吗?
答案 0 :(得分:1)
这实际上是一个很难回答的问题。您可以应用两种通用的DI Composition Models来构造依赖关系图:
两个模型都有其优点和缺点,但是只有当您整体应用环境成分模型时,您才可以将组件注册为Singleton。
我开始写博客介绍这两个模型here。