diff options
author | Benoit Foucher <benoit@zeroc.com> | 2008-03-10 20:37:20 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2008-03-10 20:37:20 +0100 |
commit | f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c (patch) | |
tree | 58a8e381c3266facc8e707b13cd0aa29757757cb /java/src/IceInternal/TcpAcceptor.java | |
parent | Merge branch 'master' of ssh://git/home/git/ice (diff) | |
download | ice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.tar.bz2 ice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.tar.xz ice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.zip |
Fix for bug 2721
Diffstat (limited to 'java/src/IceInternal/TcpAcceptor.java')
-rw-r--r-- | java/src/IceInternal/TcpAcceptor.java | 33 |
1 files changed, 1 insertions, 32 deletions
diff --git a/java/src/IceInternal/TcpAcceptor.java b/java/src/IceInternal/TcpAcceptor.java index 87e1f619adf..e09bf7c760d 100644 --- a/java/src/IceInternal/TcpAcceptor.java +++ b/java/src/IceInternal/TcpAcceptor.java @@ -46,40 +46,9 @@ class TcpAcceptor implements Acceptor public Transceiver accept() { - java.nio.channels.SocketChannel fd = null; - while(true) - { - try - { - fd = _fd.accept(); - break; - } - catch(java.io.IOException ex) - { - if(Network.interrupted(ex)) - { - continue; - } - Ice.SocketException se = new Ice.SocketException(); - se.initCause(ex); - throw se; - } - } - + java.nio.channels.SocketChannel fd = Network.doAccept(_fd); Network.setBlock(fd, false); Network.setTcpBufSize(fd, _instance.initializationData().properties, _logger); - try - { - java.net.Socket socket = fd.socket(); - socket.setTcpNoDelay(true); - socket.setKeepAlive(true); - } - catch(java.io.IOException ex) - { - Ice.SocketException se = new Ice.SocketException(); - se.initCause(ex); - throw se; - } if(_traceLevels.network >= 1) { |