用于分布传感器数据的高效Java观察器设计(〜40Hz)

问题描述:

嗨:我想设计一个让传感器数据(3个浮点值大约在40Hz左右)的结构可以通过类似Observable的东西来访问。但是通过使用java Observable/Observer类,高开销会影响性能。什么是已知的方法来保持效率并使其结构化?用于分布传感器数据的高效Java观察器设计(〜40Hz)

+4

等一下,是什么让你认为使用'Observer'接口有“高开销”?这只是一个单一方法的接口。 – 2010-10-21 15:53:17

+1

编码原型,看看它是否太慢。 – 2010-10-21 15:56:42

使用Observable接口的'开销'非常小,即使在40Hz下也不会影响性能。我强烈建议试着看看它的表现如何。

一个问题是,java.util.Observable类只是告诉观察者发生了变化,迫使Observer去获取数据。如果获得关于Observable的信息需要时间,这可能被认为是性能下降。您可能希望在Observable上实现自己的变体,其中新数据作为通知调用的参数传递给每个Observer。