恢复崩溃的InputStream

时间:2011-06-01 02:00:32

标签: java stream inputstream classcastexception recover

我正在编写服务器而我正在使用ObjectInputStream来处理专有数据包。当我想要调用ClassCastException然后尝试将它们转换为专有数据包时,我最近有时会得到一些意外的objectInputStream.readObject()。我一直试图追踪问题,我一直想知道是否因为objectInputStream因某些问题而崩溃。根据方法objectInputStream.readObject()的文档...“所有异常对InputStream都是致命的,并使其处于不确定状态;由调用者来决定忽略或恢复流状态。”

我想知道“恢复流状态”是什么意思......有没有一种方法让我恢复objectInputStream或者我应该做socket.getInputStream()

1 个答案:

答案 0 :(得分:1)

如果我理解正确,您的异常不是由objectInputStream.readObject()引起的,而是通过将(成功返回的)对象转换为您尝试读取的任何内容,因此异常不应影响流