如何检测NIO通道上的连接错误

时间:2012-01-13 13:35:40

标签: java nio

我有一种情况,我有多个连接到多个服务器,我希望使用NIO。

选择器将告诉我何时有数据要读取。有没有办法知道什么时候连接不再连接?也许当写入失败或捕获某些操作引发的异常时? 我需要将其设置为非阻塞,并且我希望以一种方式执行此操作,以便在连接失败时重新建立Channel(即建立到同一服务器的新通道)。

1 个答案:

答案 0 :(得分:3)

您将获得读/写的异常。

在其他时候,如果通道在选择器上注册了读/写兴趣,当通道断开时,将返回select(),并且通道的选择键将指示可读/可写。您将在下一次读/写中遇到异常。