code: void connect(Selector selector, InetSocketAddress socketAddress) throws IOException {
  		resolving = false;
  		try {
  			socketChannel = SocketChannel.open();
  			socketChannel.configureBlocking(false);
  			socketChannel.socket().setTcpNoDelay(true);
  		} catch (IOException e) {
  			throw new RuntimeException(e);
  		}
  		try {
  			socketChannel.connect(socketAddress);
  			add(selector, SelectionKey.OP_CONNECT);
  		} catch (IOException e) {
  			// May throw "Network is unreachable" or "Protocol family unavailable",
  			// and then socketChannel will be closed, and selectionKey will not be created
  			closeChannel();
  			throw e;
  		}
  	}
docs: registers a {@link Client} and connects to a remote address
  
  @see ConnectorImpl#connect(Connection, String, int)
  @throws IOException may throw "Network is unreachable" or "Protocol family unavailable",
  and then socketChannel will be closed, and selectionKey will not be created