标签: c# multithreading
我正在开发一个多线程应用程序,其中多个线程正在处理项目集合(列表类型)。正在执行的操作包括添加,删除项目,循环项目和执行计算。我目前正在使用锁定进行同步,但是对于多个共享集合和线程,它变得有点复杂。您建议哪些模式有效地在线程之间共享数据,避免竞争条件并使代码更易于维护?
答案 0 :(得分:0)
好吧,获取多线程代码是很棘手的。
我建议查看System.Collections.Concurrent中的集合,只要不执行需要多个集合的行为等操作的操作,就可以在没有锁的情况下使用它们。
System.Collections.Concurrent