相关疑难解决方法(0)

.NET Framework中的并发HashSet <T>?

我有以下课程.

class Test{
    public HashSet<string> Data = new HashSet<string>();
}
Run Code Online (Sandbox Code Playgroud)

我需要从不同的线程更改字段"Data",所以我想对我当前的线程安全实现有一些看法.

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);
    }
}
Run Code Online (Sandbox Code Playgroud)

是否有更好的解决方案,直接进入现场并保护它免受多线程的并发访问?

c# multithreading mutex locking thread-safety

132
推荐指数
3
解决办法
8万
查看次数

标签 统计

c# ×1

locking ×1

multithreading ×1

mutex ×1

thread-safety ×1