在“C# app”中,我有一个单一的全球类别,包含一些组合项目,如:
public class Options
{
int myConfigInt;
string myConfigString;
..etc.
}
static Options GlobalOptions;
这一类成员将使用不同的深层:
Thread1: GlobalOptions.myConfigString = blah;
段 次 页 次
Thread2: string thingie = GlobalOptions.myConfigString;
如果两条镜子接触不同成员,则使用24小时进入全球试剂也是不必要的障碍,但另一方面,对每个成员来说,形成一对一目标似乎也比上。
Also, using a lock on the global options would make my code less nice I think; if I have to write
string stringiwanttouse;
lock(GlobalOptions)
{
stringiwanttouse = GlobalOptions.myConfigString;
}
任何地方(现在,这是否好像是安全,还是扼杀了我们。 Yeah, I m new to C#......)
string stringiwanttouse = GlobalOptions.myConfigString;
这使法典变得可怕。
So... What is the best (and simplest!) way to ensure thread-safety ?