asp.netのコレクションの周りにシングルトンラッパーを持っていれば、それをキャッシュする必要がありますか、データはポストバックで永続化されますか?ASP.NETのシングルトン
また、別のユーザーがアプリケーションにログインした場合、アプリケーションは別のインスタンス(それ自体)を作成し、したがってシングルトンの別のインスタンスを作成するか、最初のインスタンスで作成された同じシングルトンにアクセスしますか?
シングルトンの実際の実装は、次のいずれかである: (デザイン1 :)
using System;
public sealed class Singleton
{
private static volatile Singleton instance;
private static object syncRoot = new Object();
private Singleton() {}
public static Singleton Instance
{
get
{
if (instance == null)
{
lock (syncRoot)
{
if (instance == null)
instance = new Singleton();
}
}
return instance;
}
}
}
又はデザイン2:静的変数は、アプリケーション限り、存在する
public sealed class Singleton
{
private static readonly Singleton instance = new Singleton();
private Singleton(){}
public static Singleton Instance
{
get
{
return instance;
}
}
}
シングルトンはどのように実装されていますか? – Oded
まだ実装されていません。おそらくコードに基づいて: using System; 公開密封クラスSingleton { private static volatile Singleton instance; プライベートな静的オブジェクトsyncRoot = new Object(); プライベートシングルトン(){} パブリック静的シングルトンインスタンス {得る {IF(例えば== NULL){ ロック(SyncRootの) {IF(例えば== NULL) インスタンス=新しいシングルトン(); } } return instance; } } } – bleepzter
あなたがしようとしていることを説明して、それを行う方法を提案できますか?おそらく、シングルトンは間違っているか、単純に必須ではないでしょうか? – Oded