一个开放的 ObjectOutputStream 最初会发送某个对象,补充的 ObjectInputStream 成功地反序列化它。然后将此 OIS 传递给单独线程类的构造函数,该构造函数需要继续无缝地读取()进一步(更新)的对象。这部分没有发生。在这里进行"上下文切换"流时,我是否对要求有所回避?非常感谢。
最重要的事情是在创建 ObjectInputStream 之前flush()
ObjectOutputStream,如果不这样做,可能会陷入死锁。
将 ObjectInputStream 传递给另一个线程不会导致问题,事实上,如果您从与写入不同的线程读取,它可以避免此问题。