Connect (localhost) выдает исключение, Connect (частный адрес) блокируетJAVA

Программисты JAVA общаются здесь
Anonymous
Connect (localhost) выдает исключение, Connect (частный адрес) блокирует

Сообщение Anonymous »

Следующий код выдает исключение, когда я пытаюсь запустить его с локальным хостом 172.0.0.1: java.net.ConnectException: Соединение отклонено: подключиться

Код: Выделить всё

channel = SocketChannel.open();
//172.0.0.1 is a non-existing server
channel.connect(new InetSocketAddress("172.0.0.1", 4342));
Однако следующий код блокируется до истечения времени ожидания, когда я запускал его с частным адресом:

Код: Выделить всё

channel = SocketChannel.open();
//192.168.0.1 is a non-existing server
channel.connect(new InetSocketAddress("192.168.0.1", 4342));
Могу ли я спросить, почему подключение к локальному хосту приведет к тому, что соединение выдаст исключение, а подключение к частному адресу будет заблокировано?

Я спрашиваю об этом, потому что хочу, чтобы функция Connect() блокировалась, пока я запускаю локальный сервер, а функция Connect() автоматически подключалась к серверу, когда сервер работает.

Есть ли способ заставить метод Connect() блокировать адрес локального хоста?

Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/343 ... ess-blocks

Вернуться в «JAVA»