打开的ObjectOutputStream最初发送某个对象,并且互补的ObjectInputStream成功反序列化它。然后,将此OIS传递到单独的线程类的构造函数,需要该类继续无缝无缝地read()进一步读取(更新)对象。这部分没有发生。在这里进行“上下文切换”时,有什么让我难以理解的要求吗?非常感谢。

最佳答案

最重要的事情是在创建ObjectInputStream之前flush() ObjectOutputStream,如果不这样做,则可能会陷入僵局。

将ObjectInputStream传递到另一个线程不会造成问题,实际上,如果您从与写入不同的线程中读取,则可以避免此问题。

关于java - ObjectOutput/InputStream的上下文切换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11969743/

10-10 17:24