System.InvalidOperationException奇怪的错误

时间:2018-08-07 14:50:13

标签: c# wpf system.reactive

有人看到这个错误了吗? 我不明白是什么代码语句执行的,因为它在堆栈跟踪中不可用。

  

System.InvalidOperationException:集合已修改;枚举操作可能无法执行。      在System.Reactive.PlatformServices.DefaultExceptionServices.Rethrow(Exception异常)      at System.Reactive.AnonymousSafeObserver 1.OnError(Exception error) at System.Reactive.Concurrency.ObserveOn 1。?。OnErrorPosted(对象错误)      在System.Windows.Threading.ExceptionWrapper.InternalRealCall(委托回调,对象args,Int32 numArgs)      在MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(对象源,委托方法,对象args,Int32 numArgs,委托catchHandler)

应用程序是使用Reactive的wpf C#.net。在多个位置使用了Reactive,并且使用锁作为同步机制将集合锁定为进行读/写操作。

注意:在整个代码中,我不会遍历订户列表或对其进行修改。

1 个答案:

答案 0 :(得分:0)

您有一个foreach,该枚举对枚举集合进行了一些更改。那是不允许的。

或者,另一个线程正在同时更改枚举集合,这也会导致异常。