# HG changeset patch # User kazz # Date 1295641820 -32400 # Node ID d5d2ca53a832c15dfe74b66ef3fc694279f7bcc8 # Parent 4c2ddaa9b998b74e56409ac3e15a24031397bb37 dealed dispose of connection close diff -r 4c2ddaa9b998 -r d5d2ca53a832 src/IOHandler.java --- a/src/IOHandler.java Sat Jan 22 05:01:34 2011 +0900 +++ b/src/IOHandler.java Sat Jan 22 05:30:20 2011 +0900 @@ -16,8 +16,10 @@ @Override public void handle(SelectionKey key) { - if (!key.isReadable()) + if (!key.isReadable()) { + key.selector().keys().remove(key); return; + } SocketChannel sChannel = (SocketChannel)key.channel(); ByteBuffer buffer = ByteBuffer.allocate(BUFFERSIZE); try { diff -r 4c2ddaa9b998 -r d5d2ca53a832 src/WebSocketServer.java --- a/src/WebSocketServer.java Sat Jan 22 05:01:34 2011 +0900 +++ b/src/WebSocketServer.java Sat Jan 22 05:30:20 2011 +0900 @@ -32,8 +32,9 @@ for (SelectionKey key : selector.selectedKeys()) { Handler handler = (Handler) key.attachment(); handler.handle(key); - selector.selectedKeys().remove(key); +// selector.selectedKeys().remove(key); } + selector.selectedKeys().clear(); } catch (IOException e) { e.printStackTrace();