有人看到这个错误了吗? 我不明白是什么代码语句执行的,因为它在堆栈跟踪中不可用。
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,并且使用锁作为同步机制将集合锁定为进行读/写操作。
注意:在整个代码中,我不会遍历订户列表或对其进行修改。
答案 0 :(得分:0)
您有一个foreach
,该枚举对枚举集合进行了一些更改。那是不允许的。
或者,另一个线程正在同时更改枚举集合,这也会导致异常。