c# – WPF实时图表应用程序架构

我有以下几种情况:

我想(通过串口)向设备发送一些命令.该设备确实向我发回连续的数据流(每秒最多12000个值).

为了控制某些设置,我需要一些按钮来向设备发送命令,以便在数据流之前和期间启动/停止/更改设置.另外,我想要获得这些数据的实时情节.我当然会过滤这些数据.此外,在某些时间戳处,将存在指示我想要切出所接收数据的某个窗口的信号.

这意味着我将有两个图表.我使用WPF已经取得了一些进展,但现在当我与下方图表进行交互(缩放/平移)时,上面的一个会显着冻结.这是因为两者都经常刷新!

使用线程完成工作(数据接收/过滤),但是必须在ui线程内完成绘图的更新.

任何想法如何解决这个问题?也许使用多个流程?

解决方法:

您应该使用Reactive Extensions.它是为这种东西而建的.

http://msdn.microsoft.com/en-us/data/gg577609.aspx

Requesting a clear, picturesque explanation of Reactive Extensions (RX)?

在第二个链接上,虽然主题是javascript,但它所说的大部分内容都是关于Reactive Extensions并在C#中交叉应用于Rx.

上一篇:检测代码潜在bug和质量之SonarQube


下一篇:SonarQube社区版分支插件V1.3.0更新