参数化单例模式

Che*_*ian 5 c# design-patterns

这里的链接列出了([http://www.yoda.arachsys.com/csharp/singleton.html] [1])C#中的一些单例模式.该文章还明确地描述了单例并不意味着接受参数"否则对实例的第二次请求但具有不同的参数可能会有问题".这意味着您需要使用该类所需的任何参数作为属性.

我很想知道是否有任何参数化的单例设计模式.接受值作为属性不会对消费者强制执行任何操作.

Dar*_*der 3

根据您的问题,您似乎正在查看抽象工厂模式(创建多个类系列的实例),该模式保留已实例化的类的内部列表/字典,从而模仿单例模式功能。

然后,您可以使用此工厂类根据您传入的参数请求一个对象,如果该对象存在于其内部列表中,则返回该对象,如果不存在,则创建一个新实例,然后将其添加到列表中并返回。