1
0
在回答问题的第二部分时,您说得很对,尽管.NET4.0中的并发集合实现试图实现无锁,但它们仍然位于非无锁内存分配子系统之上。 内存管理是所有无锁数据结构的祸根:下面是一个关于最新技术的演示: http://sysrun.haifa.il.ibm.com/hrl/ISMM2009/program.html#7
|
2
11
堆栈和队列在并发编程中非常有用,就像在顺序编程中一样。
新的
另外,我想指出一件事——你在第二段中有两个误解。链表对于可伸缩性来说并不是特别糟糕。内存分配可能需要定期进行(尽管有一些方法可以解决这个问题),但通常情况下,在可伸缩性方面,这比其他潜在问题付出的代价要小(这真的取决于场景……)还有,新的
|
3
3
我可以想象,基于链表的设计是为了使它无锁。它的可扩展性有什么问题,您还考虑了哪些其他选项? |
4
2
这里有一篇最近的博客文章,它精确地涵盖了您所关注的问题(使用ConcurrentBag和TPL的GC问题),建议了在现场发现和分析这个问题的方法(VS2010 Concurrency Visualizer)。部分解决方案建议使用服务器GC。 |
Emopusta · 从后端到前端的图像路径不工作 2 年前 |
Asdrubal Hernandez · Linq查询特定数组索引出错 2 年前 |
Niyazi Babayev · 如何在表达式中动态应用表达式? 2 年前 |
Dansih · .Net核心自定义身份验证方案 2 年前 |
lolorekkk · 面板插入。NET WinForm 2 年前 |