我有一个通过套接字连接到 ObjectInputStreamObjectOutputStream,我一直在使用 Socket.setSoTimeout() 使 ObjectInputStream.readObject() 仅阻塞 100 毫秒。自从我开始这样做以来,我在调用 StreamCorruptedError 时收到了很多 readObject() 。超时可能是罪魁祸首吗?

最佳答案



您可以使用 Thread.interrupt 让它抛出一个 InterruptedException ,或者在这种情况下抛出一个 InterruptedIOException 。确保你不要吞下异常!

关于java - 在 ObjectInputStream.readObject() 上设置超时是否安全?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4974742/

10-11 00:07