我正在使用Oxyplot库在我的应用程序中绘制图形 .
我的绘图模型实例包含线序列表,并在Y轴上绘制时间 . 我的应用程序每隔几秒就会获得实时数据,这些数据需要在图表上更新 . 因此每隔几秒钟图表就会更新,并且会调用invalidateplot(true) .
它似乎工作正常几分钟 . 之后,Invalidating plot会不断抛出以下异常 .
at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource
resource)
at System.Collections.Generic.List`1.Enumerator.MoveNextRare()
at System.Collections.Generic.List`1.Enumerator.MoveNext()
at OxyPlot.ReflectionExtensions.AddRange(List`1 target, IEnumerable itemsSource, String dataFieldX, String dataFieldY) in
oxyplot\Source\OxyPlot\Utilities\ReflectionExtensions.cs:line 89
我已经参考了文档并在synchronized块中添加了invalidateplot以修复问题,但它没有帮助 .
lock (MyModel.SyncRoot)
{
if (MyModel != null)
MyModel.InvalidatePlot(true);
}
如何解决这个问题?