Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Если удаленый порт занят / 5 сообщений из 5, страница 1 из 1
14.10.2012, 14:12:13
    #37997523
mr.Jack
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Если удаленый порт занят
Привет. Не нашел в документации ответ на вопрос. Вот создаем соединение
Socket socket = new Socket(inetAddress, port);

Если port будет занят, что произойдет? Т.е. мне нужно в этом случае коннектиться на другой порт, но перед этим как то определить, что порт занят. Подозреваю, что либо IOException либо socket == null . Либо, проверять потом socket.isBound() .
1. Можно проверить достуность порта кроме как socket.isBound();
2. И что же вернется socket = new Socket(inetAddress, port); если порт занят?
...
Рейтинг: 0 / 0
14.10.2012, 14:19:50
    #37997529
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Если удаленый порт занят
...
Рейтинг: 0 / 0
14.10.2012, 14:44:44
    #37997539
mr.Jack
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Если удаленый порт занят
Usman,

описанное по ссылке имеет отношение к порту на локальной машине. Я подключаюсь к порту на другом сервере
...
Рейтинг: 0 / 0
14.10.2012, 15:57:19
    #37997583
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Если удаленый порт занят
mr.Jackописанное по ссылке имеет отношение к порту на локальной машине. Сорри, неправильно понял

А если так:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Socket socket = new Socket();
try {
	// пытаемся приконектиться к 81-му порту, ставим таймаут на 2 сек
	socket.connect(new InetSocketAddress(InetAddress.getByName("ya.ru"), 81), 2000);
	System.out.println(socket.isBound());
	System.out.println(socket.isConnected());
}
catch (SocketTimeoutException e) { // если "ответа" нет больше 2-х сек происходит таймаут
	System.err.println(e.getMessage());
}
finally {
	socket.close();
}
...
Рейтинг: 0 / 0
14.10.2012, 19:01:27
    #37997699
mr.Jack
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Если удаленый порт занят
Usman,

Да, возможно это оптимальный вариант, спасибо. Сегодня закодю. Заодно проверю, что выбрасывается(или нет) при
Код: java
1.
public void connect(SocketAddress endpoint) throws IOException
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Если удаленый порт занят / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]