我想知道为什么当我使用表序列化同一对象内存:序列化相同的对象,观察不同的结果
ByteArrayOutputStream byteOutput = new ByteArrayOutputStream();
ObjectOutputStream stream = new ObjectOutputStream(byteOutput);
stream.writeObject(m.view()); //view return a string
stream.flush();
stream.close();
byteOutput.flush();
byteOutput.close();
,我跑我的程序好几次,我得到不同的结果(而不是差异很大,但仍有差异)
execution 1 :4497
execution 3 :4500
execution 4 :4500
execution 5 :4494
m:是一个包含其他类的另一个对象的对象。我不能列出所有的类在这里,这是一个大的框架,string
序列是一样的!
什么是'M'和'overhead'?也许尝试发布一个完整的SSCCE(http://sscce.org)? – 2012-04-24 09:06:55
如果大小不完全相同,则对象也不相同。 – 2012-04-24 09:28:12
是相同的大小,相同的是执行,它都一样:) – Mehdi 2012-04-24 09:36:08