我有一个消息系统,我正在发送一组不同的flatbuffer表。接收器端需要能够从线路中拾取这些并将它们解码/转换为适当的类型。
我可以轻松发送单一类型的消息并在另一端读取它但是如何从不同的模式文件中检测多种不同类型的消息?消息上是否有一个神奇的数字可以让我识别结构?
您可以使根table包含union,其中包含各种消息类型。或者,如果您愿意,可以为每种FlatBuffer声明一个file_identifier,并以这种方式识别它们。
table
union
file_identifier
详细信息:https://google.github.io/flatbuffers/md__schemas.html