3

次のような辞書構造があるとしましょう

var stocks = new Dictionary<string, double>();
stocks.Add("APPL", 1234.56);

ディクショナリに追加および削除する機能を保持しながら、それを含むクラスのインスタンス間でコンテンツを「共有」できる方法はありますか? (ちなみに、静的にできない包含クラスから継承することを余儀なくされています。)

または、このタイプの共有を可能にするデータを表す別の方法はありますか?

4

1 に答える 1

5

クラスは、静的メンバーを持つために静的である必要はありません。ディクショナリを保護された静的プロパティとして持つことをお勧めします。ConcurrentDictionaryまた、スレッドセーフのために、通常ではなくを使用する必要がありますDictionary

public class MyClass
{
    protected static ConcurrentDictionary<string, double> Stocks {get; set;} 

    static MyClass()
    {
        Stocks = new ConcurrentDictionary<string, double>();
    }
}
于 2012-10-24T21:26:54.777 に答える