我有些困难理解如何在我的代码中使用lock()
语句。我有一些静态集合,如下所示:
private static Dictionary<string, User>() Users = new Dictionary<string, User>();
我不断地向这个集合中添加、删除、更新和读取内容。我意识到当我添加、删除或更新时,应该锁定
Users
,但当我从集合中读取内容时,我需要锁定吗?在类似于搜索键并返回字典中的User
的操作中,什么是正确的方法?我考虑创建一个新的Dictionary
实例,然后将用户复制到其中并从中读取,或者我可以直接从原始集合中读取?