java – 使用Kryo将多个对象序列化为单个文件

据我所知,每个对象都会发生Kryo序列化/反序列化.是否可以将多个对象序列化为单个文件?在另一个类似的SO问题中提出的解决方法之一是使用一组对象.考虑到需要序列化的大量数据,我觉得它不会像应有的那样高效.这是正确的假设吗?

最佳答案
Kryo API是否采用OutputStream?如果是这样,只需输入相同的OutputStream来序列化多个文件.读取时对InputStream执行相同操作.良好的序列化格式将具有长度编码或终止符号,并且不会依赖于EOF.

只要所有这些对象都已在内存中,阵列方法也可以以最小的开销工作.您所说的是每个对象只添加几个字节来创建一个数组来保存它们.如果它们不是全部都在内存中,则必须首先将它们全部加载到内存中以围绕它们创建一个数组.鉴于数据集足够大,这肯定会成为一个问题.

相关文章

应用场景 C端用户提交工单、工单创建完成之后、会发布一条工...
线程类,设置有一个公共资源 package cn.org.chris.concurre...
Java中的数字(带有0前缀和字符串)
在Java 9中使用JLink的目的是什么?
Java Stream API Filter(过滤器)
在Java中找到正数和负数数组元素的数量