我无法理解lock()
在我的代码中使用该语句的方式。我有几个像这样的静态集合:
private static Dictionary<string, User>() Users = new Dictionary<string, User>();
我不断地从这个集合中添加、删除、更新和阅读。我意识到,当我添加、删除或更新时,我应该锁定Users
,但是当我从集合中读取时,我必须锁定它吗?执行诸如搜索键并User
在字典中返回的正确方法是什么?我正在考虑创建一个新Dictionary
实例,然后将用户复制到该实例,然后从中读取,或者我可以直接从中读取吗?