有谁知道是否有任何可用于 .NET 的无锁容器库?
最好是被证明比我们在 .NET 中的同步包装器更有效且更快的东西。
我在 .NET 上找到了一些文章,但没有一篇指定任何速度基准测试,也没有激发人们对其可靠性的信心。
谢谢
有谁知道是否有任何可用于 .NET 的无锁容器库?
最好是被证明比我们在 .NET 中的同步包装器更有效且更快的东西。
我在 .NET 上找到了一些文章,但没有一篇指定任何速度基准测试,也没有激发人们对其可靠性的信心。
谢谢
迟到了,但总比没有好,我认为我会将 Julian Bucknalls 的文章添加到此列表中。
但他没有业绩数据。在我对他的结构的测试中,与锁定相比,该列表的扩展性很好(与 ReaderWriterLock 相比,内核使用率非常低)。
他的博客有一系列关于 C# 中无锁结构的文章。
你的意思是像它们存在于 PFX 框架(Parallels for .NET)、ConcurrentQueue 和 ConcurrentStack 中的容器类吗?
在对此一无所知的情况下,我在这里偶然发现了一个图书馆。
虽然可能不是您正在寻找的东西,但至少在这里有一个关于C# 中无锁队列结构的StackOverflow 的实现和讨论。通过 StackOverflow 代码审查过程可能会对其安全性产生一些信心,或者提供有关如何自己构建无锁容器的信息。
无锁数据结构会出现问题,直到它们使用由内存模型引起的混乱来修改 CLR,请参阅 CLI 规范。
无锁编程非常困难,您不应该在集合(容器)级别上打扰它。对任何语言都适用..