检查ObjectOutputStream是否仍在序列化

时间:2014-09-21 21:09:13

标签: java serialization objectoutputstream

我正在开发一款简单的多人游戏,它在大多数情况下都有效,但有时当我使用ObjectOutput编写一个对象时,我得到了:

  

java.io.IOException:stream active

当ObjectOutputStream在仍然序列化对象时被重置时发生。我想知道是否有某种方法等待ObjectOutputStream在重置之前完成序列化,或者是否有其他解决方案来解决这个问题?

以下是出错的代码:

try {
        objectWriter.writeObject(object);
        objectWriter.flush();
        objectWriter.reset();
    } catch (Exception e) {
        e.printStackTrace();
    }

1 个答案:

答案 0 :(得分:0)

该代码位于类的私有writeObject()方法中,或者您有多个线程使用相同的流。

没有办法做你的标题所要求的。你必须确保它不会发生。

相关问题