我有以下课程。
class Test{
public HashSet<string> Data = new HashSet<string>();
}
我需要从不同的线程更改字段“数据”,所以我想对当前的线程安全实现提出一些意见。
class Test{
public HashSet<string> Data = new HashSet<string>();
public void Add(string Val){
lock(Data) Data.Add(Val);
}
public void Remove(string Val){
lock(Data) Data.Remove(Val);
}
}
有没有更好的解决方案,可以直接进入现场并保护它免受多个线程的并发访问?
沧海一幻觉
相关分类