【发布时间】:2016-05-08 10:07:03
【问题描述】:
我正在尝试通过通道发送序列化对象。这个想法是使用方法构造函数扩展SocketChannel,该构造函数保存要发送的对象,并添加方法
writeObj() 用于发送序列化对象大小,后跟序列化对象。
使用私有字段,我试图以非阻塞模式管理所有过程,因此构造函数将对象保存为序列化为ByteBuffer src 字段和writeObj() 使用super.write(ByteBuffer src) 写入对象。 (如果没有完全接收到 Object,则 Object readObj() 返回 null,如果 super.read() 返回 -1,则返回 Object)
问题是SocketChannel是抽象类,所以super.read()和super.write(..)是不允许的。
我应该扩展SocketChannelImpl 还是有其他正确的方法可以做到这一点?
【问题讨论】:
标签: java nio socketchannel