C# で非シングルトン クラス内にシングルトン クラスをネストすることは可能ですか? もしそうなら、この場合、シングルトンのライフサイクルに制限はありますか?
public class NonSingletonClass
{
public NonSingletonClass()
{
// Initialize some stuff.
}
// Put some methods here.
public class SingletonClass
{
// Singleton construction goes here.
// Put some methods here.
}
}
私のアプリケーションの設計では、これは理にかなっていますが、実際にこれを実装する前に、潜在的な落とし穴を知る必要があります。
編集: 具体的には、タイマーに基づいてタスクを実行するジョブ ホストがあります。このNonSingletonClass
場合の は、タスクのインスタンス化です。はSingletonClass
、 によって使用されるデータのリポジトリですが、 のNonSingletonClass
外部から変更できますNonSingletonClass
。SingletonClass
複数のNonSingletonClass
インスタンスがある場合でも、それらすべてに対して命令とデータのセットが 1 つだけであることを保証するために存在します。