|
|
1
2
您可能希望研究使用
http://msdn.microsoft.com/en-us/library/dd997305(v=VS.100).aspx |
|
|
2
1
我倾向于使用您的第一个选项,使用.toArray()创建一个数组,并对其进行迭代。你有没有分析一下它的复制速度有多慢?这对我来说通常是微不足道的,即使是大的收藏。 |
|
|
3
0
制作集合的副本通常需要首先锁定集合,因此与仅锁定集合并在其上迭代相比没有任何好处—除非您的集合支持某种快速克隆。 我认为另一种选择是使用不同类型的集合,那些对并发访问有更好支持的集合,或者能够快速返回快照。这里的另一个答案与.NET特定的答案相关;如果您有兴趣自己实现一个答案,我建议您撰写这篇论文: http://www.cs.tau.ac.il/~shanir/concurrent-data-structures.pdf |
|
|
user107586 · 如何处理等待句柄不会导致无限循环? 11 月前 |
|
|
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 11 月前 |
|
|
BenjiFB · C#内存缓存:在一次操作中追加到列表? 11 月前 |
|
|
András Takács · Python多线程问题 1 年前 |
|
|
András Takács · Python多线程错误 1 年前 |