首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >深度复制扁平缓冲区对象的方法

深度复制扁平缓冲区对象的方法
EN

Stack Overflow用户
提问于 2017-11-22 16:24:16
回答 1查看 1.3K关注 0票数 1

我用扁平缓冲区表示我的数据。目前我遇到了一个问题,就是我将平面缓冲区中的一大堆对象分成了几个小块。

最直接的方法是为每一块创建一个平面缓冲区构建器,然后将对象写入该构建器。但是当对象有点复杂时,按结构复制数据结构是一项相当繁琐的工作。

由于扁平缓冲区存储相对偏移量,理论上我认为可以简单地复制字节缓冲区来将对象复制到另一个扁平缓冲区实例中。已经有什么东西可以深度复制它了吗?我现在用的是java。谢谢

谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-11-23 00:16:24

这比你想象的要复杂得多,因为一个表和它的子表在内存中不一定是连续的,并且可能与其他表共享vtable,等等。

最简单的方法是使用嵌套的FlatBuffers (将子对象放在一个字节向量中),因为它很容易被复制。

在C++中有一个使用反射的深度复制功能,但是它速度很慢,需要一个二进制模式文件,并且还没有移植到Java语言中。新的“迷你反射”表将适用于深度复制,但也只是到目前为止的C++。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47429886

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档