gpt4 book ai didi

Java Serializable、ObjectInputstream、非阻塞 I/O

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:36:46 25 4
gpt4 key购买 nike

我刚刚开始使用 Java 序列化,我不清楚在非阻塞 I/O 的情况下您应该如何从源获取对象。

我能找到的所有文档都建议使用 ObjectInputStream 是读取序列化对象的正确方法。但是,正如我提到的,我正在使用 java.nio 并执行非阻塞操作。如果 readObject() 将阻塞直到有新对象可用,这对我没有帮助

总结 .. 使用 Java NIO 时如何进行序列化?

最佳答案

将序列化实例包装在一个报告有效负载长度的协议(protocol)中,有效负载就是所讨论的实例。然后,一旦您知道您有一个表示完整实例的段,您就可以安全地使用 ObjectInputStream,因为它不会阻塞。

协议(protocol)是这样的前 32 位:有效载荷长度有效载荷长度位:序列化数据

有时连我自己都感到惊讶。

关于Java Serializable、ObjectInputstream、非阻塞 I/O,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1481639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com