当前位置: 代码迷 >> Java相关 >> Java NIO 当终端关闭后,服务器怎么知道具体是哪台终端
  详细解决方案

Java NIO 当终端关闭后,服务器怎么知道具体是哪台终端

热度:283   发布时间:2016-04-22 21:10:16.0
Java NIO 当终端关闭后,服务器如何知道具体是哪台终端?
当多个终端连接到服务器后,将它们都注册到服务器的一个Hashtable中:

Hashtable<String,SocketChannel> clientlist=new Hashtable<String,SocketChannel>();
String 相当于终端的用户名,SocketChannel 是各个终端的通道。

现在,如果一个终端关闭,服务器捕获这个异常后,如何确定是哪个终端呢?
------解决方案--------------------
register(Selector sel, int ops, Object att) 的时候
在 Object att 里面存 终端的用户名
异常的时候,通过 SelectionKey.attachment(),把 终端的用户名 取出来
  相关解决方案