我有一个类中只有计数器的属性定义,这必须是线程安全的,但实际上并不安全,因为 get
和 set
不在同一个锁中。如何解决这个问题?
private int _DoneCounter;
public int DoneCounter
{
get
{
return _DoneCounter;
}
set
{
lock (sync)
{
_DoneCounter = value;
}
}
}