假设我有一个 Dictionary 结构,例如
var stocks = new Dictionary<string, double>();
stocks.Add("APPL", 1234.56);
在保留从字典中添加和删除的能力的同时,有没有办法可以在它的包含类的实例之间“共享”内容?(顺便说一句,我被迫从一个不能是静态的包含类继承。)
或者是否有另一种方式来表示允许这种类型共享的数据?
一个类不需要是静态的就可以拥有静态成员。我建议将字典作为受保护的静态属性。同样为了线程安全,您需要使用ConcurrentDictionary
而不是正常的Dictionary
public class MyClass
{
protected static ConcurrentDictionary<string, double> Stocks {get; set;}
static MyClass()
{
Stocks = new ConcurrentDictionary<string, double>();
}
}