我正在开发机器人控制系统,并且想使用反应式编程来重构当前的体系结构。
基本上,它由多个节点(线程)组成,它们在共享总线上侦听并执行数据分析任务,以规划新路径,避免障碍物,在电动机温度过高时启用风扇等。 现在,我处理传感器数据的方式已经很基本了,我有一个线程从传感器读取值,然后通过总线上的消息将这些值发送给线程。
由于大多数时候主传感器都提供可比较的输出,所以我想避免总线上充斥无用的消息,并仅在检测到旧值与新值之间存在一定差异时才更新传感器读数。
我要采用的方法是将共享的静态HAL对象用于传感器,并仅在使用模数距离检测到不同的读数时才更新它们的值。 另一个可能的选择是在满足上述条件时发送传感器读数消息,而不是HAL对象。
在速度方面,这两种方法中哪个更方便? 可以定义反应式编程吗?