flatbuffers

    0热度

    3回答

    我试图通过为最重复的struct创建一个压缩模式来优化我的flatbuffer大小(仅使用int的20 LSB位并将它们分成64位字),结果并不是我所期望的:文件大小增加了一点,而不是我期待的剧烈压缩,为什么我的2 ulong + 1 uint结构(第二种情况)比生成的文件中的显式结构(第一种情况)需要更多的空间? 在我的例子中,使用显式结构一个2.4MB的文件成为使用2.6M压缩一个.... 显

    -1热度

    2回答

    C#中的flatbuffers可能将对象序列化到本机(非管理型)内存缓冲区中吗? 所以我想要做的步骤: 从本机内存分配本机内存缓冲区 C#创建对象,并将它们序列到分配的缓冲区 发送该内存缓冲区C++反序列化 我正在考虑C#中的一些自定义内存缓冲区分配器,或者将C#内存缓冲区所有权转移到C++的某种方式。 一般来说,我想避免从C#向C++发送数据时反复拷贝内存,反之亦然。我想要这个内存缓冲区在C#和

    0热度

    2回答

    我的Java应用程序正在将Protobuf消息存储在数据库中。应用程序速度很快,但速度可能会更快,因为并非始终使用所有消息部分,导致不必要的数据上的CPU周期浪费。另外,有些消息具有类似树的结构,导致分配的内存比我想要的多。 做一些研究之后,似乎FlatBuffers将是一个不错的替代,因为它声称它是零配置/零解析。但是,benchmarks已针对C++运行。我的应用程序是用Java编写的。 Fl

    0热度

    1回答

    我想知道Firebase SDK中是否有方法将值作为字节数组数据获取。为什么?那么我想实现flatbuffers作为序列化/反序列化机制。

    0热度

    1回答

    我已经看到一些帖子,但没有得到这个用例的任何例子,这里有一个链接,我已经提到this。我也读过一些博客,但都是徒劳的。

    0热度

    1回答

    我正在向Node.js服务器中的收到消息发送ack消息,并且想要将messageId回显给客户端。目前,我正在将缓冲区的messageId解析为字符串,并从字符串构建ack。将id解析为字符串并返回是不必要的,但我无法直接使用stuct缓冲区构建ack。 这是messageid作为字符串传递时的工作方式。 function createAck(messageId) { let build

    0热度

    1回答

    我有一个关于使用flatbuffers为javascript生成的代码的问题。 现在我有item.fbs和itemManager.fbs其中包含table包括item.fbs载体。它生成了2个js文件。在js中使用itemManager时,会发现找不到item构造函数events.js:163 Uncaught TypeError: my.namespace.Item is not a const

    0热度

    1回答

    我正在尝试使用Flatbuffers,并且我可以使用flatc再次验证我的JSON响应Flatbuffer模式。它看起来像flatc不检查是否存在必填字段?我是否缺少某些东西或者flatc没有验证给定JSON的Flatbuffer模式的必填字段?

    1热度

    1回答

    我试图运行flatc -s test.idl没有成功。这曾经工作,但改变笔记本电脑后,我无法再编译模式。如果我故意破坏test.idl,我会得到错误,但是使用正确的语法只会失败。 test.idl看起来是这样的: namespace Foo; enum Type : byte { type_request = 1, type_reply = 2, } struct UU

    2热度

    2回答

    使用rapidJSON我能够存储任何类型的数据(由rapidJSON支持)作为对照键的值。我可以在protobuf中做到这一点吗?如果是这样,怎么样? 我之所以选择protobuf over rapidJSON是因为它的速度(和rapidJSON中的关键比较实际上是一个“串”比较,代价很大)。 或者还有其他选择吗?也许flatbuffers? 要求是存储任何类型的数据与int类型的键。比常规的js