>故障排除“集合已被修改;
進行此錯誤的方法。
可能的罪魁禍首是一個回調,例如NotifySubscribers
,在
循環:SignalData
NotifySubscribers
原始代碼:foreach
修改的代碼:
<code class="language-csharp">foreach(Subscriber s in subscribers.Values)</code>
>通過使用
>創建<code class="language-csharp">foreach(Subscriber s in subscribers.Values.ToList())</code>的副本,枚舉在循環開始時在字典狀態的快照上運行。 對原始字典的任何後續修改都不會影響枚舉,從而消除了錯誤的回調是問題的來源。 這將循環與外部更改隔離,從而確保平穩執行。
>
以上是如何修復'收集的修改;枚舉操作可能不會執行” WCF中的錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!