Creating a Non-Blocking Socket

public class test
    {
     public static void main(String args[])
         {
         // Create a non-blocking socket and check for connections
             try {
             // Create a non-blocking socket channel on port 8080
             SocketChannel sChannel = createSocketChannel("www.xxx", 8080);
            
             // Before the socket is usable, the connection must be completed
             // by calling finishConnect(), which is non-blocking
                 while (!sChannel.finishConnect()) {
                 // Do something else
                 System.out.println("wonderful");
             }
             // Socket channel is now ready to use
         }
             catch (IOException e) {
         }
     }
    
     // Creates a non-blocking socket channel for the specified host name and port.
     // connect() is called on the new channel before it is returned.
     public static SocketChannel createSocketChannel(String hostName, int port) throws IOException
         {
         // Create a non-blocking socket channel
         SocketChannel sChannel = SocketChannel.open();
         sChannel.configureBlocking(false);
        
         // Send a connection request to the server; this method is non-blocking
         sChannel.connect(new InetSocketAddress(hostName, port));
         return sChannel;
     }
}
