Accepting a Connection on a ServerSocketChannel
To create a ServerSocketChannel, see Creating a Non-Blocking Server Socket.
// Get port that received the connection request; this information
// might be useful in determining how to handle the connection
int localPort = serverSocketChannel.socket().getLocalPort();
try {
// Accept the connection request.
// If serverSocketChannel is blocking, this method blocks.
// The returned channel is in blocking mode.
SocketChannel sChannel = serverSocketChannel.accept();
// If serverSocketChannel is non-blocking, sChannel may be null
if (sChannel == null) {
// There were no pending connection requests; try again later.
// To be notified of connection requests,
// see Using a Selector to Manage Non-Blocking Server Sockets.
} else {
// Use the socket channel to communicate with the client
// See Using a Selector to Manage Non-Blocking Sockets.
}
} catch (IOException e) {
}
Post a comment