Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
去年关闭。
感谢您提供有关设计问题的帮助:
我有一个单例实例。
我正在考虑将其添加为成员:(x类的)实例数组,其中x是具有获取一些参数的构造函数的类。
我希望数组中的每个单元格都具有惰性初始化。
我需要每个对象都是单例-但是在没有模式的情况下是否有任何减少或简单的方法来实现相同目的,整个阵列已经是单例的成员了吗?
在以下情况下,您会推荐我什么设计?
1)访问数组对象必须是线程安全的
2)不需要类型安全
预先感谢您的任何想法\建议
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
去年关闭。
感谢您提供有关设计问题的帮助:
我有一个单例实例。
我正在考虑将其添加为成员:(x类的)实例数组,其中x是具有获取一些参数的构造函数的类。
我希望数组中的每个单元格都具有惰性初始化。
我需要每个对象都是单例-但是在没有模式的情况下是否有任何减少或简单的方法来实现相同目的,整个阵列已经是单例的成员了吗?
在以下情况下,您会推荐我什么设计?
1)访问数组对象必须是线程安全的
2)不需要类型安全
预先感谢您的任何想法\建议
最佳答案
如果使用.NET 4,则应查看类型Lazy<T>
。Lazy<T> Constructor (Func<T>, LazyThreadSafetyMode)
更具体。