【发布时间】:2015-09-03 21:36:50
【问题描述】:
我需要使用 NIO 来让服务器端支持写入操作超时,但是处理套接字通道上的读取操作会使我的程序复杂化。
我想知道是否可以使用 NIO 写入套接字但使用常规 IO 读取,例如
((SocketChannel) selectedKey.channel()).socket().getInputStream().read(buffer)
这行得通吗?
【问题讨论】:
我需要使用 NIO 来让服务器端支持写入操作超时,但是处理套接字通道上的读取操作会使我的程序复杂化。
我想知道是否可以使用 NIO 写入套接字但使用常规 IO 读取,例如
((SocketChannel) selectedKey.channel()).socket().getInputStream().read(buffer)
这行得通吗?
【问题讨论】:
没有。如果通道处于阻塞模式,则只能在通道套接字上使用流,在这种情况下,您将没有 SelectionKey。
【讨论】: