【发布时间】:2012-01-11 21:19:59
【问题描述】:
在 c# 中扩展一个使用 foreach 遍历的 List 是否安全?
【问题讨论】:
-
InvalidOperationException: Collection Was Modified -
通常最好用函数式编程术语来考虑 - 使用 LINQ 创建新列表(或序列)而不修改旧列表。
-
您可能应该刚刚尝试过并看到您会收到@VirtualBlackFox 给您的异常...无论如何,有很多方法可以处理您想要执行此操作的场景。也许您需要订阅一些更改事件,也许您需要同步访问,也许队列更有意义......当您添加项目时,您期望会发生什么?您可能仍然可以使用不同的方法来做到这一点......
-
Pete M 在逻辑上似乎是合理的。列表从头到尾被遍历,有时在遍历过程中元素被添加到末尾。
-
你能发布更多关于你需要做什么的信息吗?我们或许可以为您提供一些替代方案。
标签: c# list collections foreach