我有一个在 TrackBar 滚动时刷新 1000 线图的过程。
我做了一些 StopWatching,发现 ZGC.Refresh() 占了进程运行时间的 90%。在 TrackBar 滚动时查看图形进度的能力对于程序来说是必不可少的。有什么办法可以优化 ZGC.Refresh() 的效率,让我的程序运行得更快?
您可以使用ANTS Performance Profiler之类的工具将其范围缩小到 Refresh() 方法的哪一部分可以使用优化。
排除对方法本身的优化,是否有可能生成一个比您实际需要的更大的图形,然后只显示该图形的一部分,让滚动改变当前显示的图形的哪一部分?
而不是Refresh()
使用Invalidate()
- 它应该更快,因为它只会刷新那些更改的元素。
有时需要使用组合AxisCHange() + Invalidate()
任何对 ZedGraph 性能感兴趣的人都应该在这里看到我的答案。
只是试图宣传在 2008 年之后发生变化(包括性能增强)的库版本。