我可以像下面这样定义lockObject:
private readonly object lockObject;
或者应该像这样玷污:
private object lockObject;
答案 0 :(得分:4)
99.99%的时间使用只读
传统上你会想要一个只读对象作为你的锁,原因是如果你没有使它成为只读的变量lockObject
上的对象正在进行锁定而且它会在那里发生变化是将锁定放在多个线程的不同对象上的情况。
这是一个很好的列表解释,可能会导致问题而不使用只读锁定
lockObject
lockObject
lockObject
处抓取锁定,这与第1步中的锁定不同0.01%的时间
这是因为您想要因某种原因更改锁定,即您控制访问权限的资源已更改,但可能仍有线程在上一个资源上运行,并且您认为它们当前的操作对您的程序仍然有效,而且你不想等他们改变锁定。 再次出现警告,您可能不应该这样做。