根据内容向不同的人直接发送消息 class
Direct message based on content to different class
我有以下场景:
我通过端口(例如串行 COM 端口)接收消息。每条消息都有一个header,用于检查消息属于谁。
让我们假设 header 只有一个字节,这个字节应该用于将消息“转发”到 object。
一个例子:
Header -> Receiver
0x00 -> Object A
0x01 -> Object B
...
目前我用 object 的方式解决了这个问题,例如拥有接收消息的端口(例如 jSerialCom)。我们称这个为“port object”。我让这个可以观察到,每个 object 可能成为接收者的人都在观察它。
一旦收到消息,端口 object 将通知所有观察者收到的消息,他们必须自行决定消息是否与他们相关。
我觉得这不是最好的解决方案,请问您是否认为存在更好的方法。
让端口对象维护一个观察者地图。映射键是 [消息] 头字节,映射值是当 端口对象 收到带有该头字节的消息时想要通知的观察者列表。
我有以下场景:
我通过端口(例如串行 COM 端口)接收消息。每条消息都有一个header,用于检查消息属于谁。
让我们假设 header 只有一个字节,这个字节应该用于将消息“转发”到 object。
一个例子:
Header -> Receiver
0x00 -> Object A
0x01 -> Object B
...
目前我用 object 的方式解决了这个问题,例如拥有接收消息的端口(例如 jSerialCom)。我们称这个为“port object”。我让这个可以观察到,每个 object 可能成为接收者的人都在观察它。
一旦收到消息,端口 object 将通知所有观察者收到的消息,他们必须自行决定消息是否与他们相关。
我觉得这不是最好的解决方案,请问您是否认为存在更好的方法。
让端口对象维护一个观察者地图。映射键是 [消息] 头字节,映射值是当 端口对象 收到带有该头字节的消息时想要通知的观察者列表。