Вы можете получить тайм-аут соединения, если на сервере есть ServerSocket, связанный с портом, к которому вы подключаетесь, но не принимаете соединение.
Если это всегда происходит с 250-м соединением, возможно, сервер настроен на прием только 250 соединений. Кто-то должен отключиться, чтобы вы могли подключиться. Или вы можете увеличить время ожидания; вместо создания такого сокета создайте сокет с пустым конструктором, а затем используйте метод connect ():
Socket s = new Socket();
s.connect(new InetSocketAddress(my_hostName, my_port), 90000);
Время ожидания соединения по умолчанию составляет 30 секунд; Приведенный выше код ожидает 90 секунд для подключения, а затем выдает исключение, если соединение не может быть установлено.
Вы также можете установить меньшее время ожидания соединения и сделать что-то еще, когда поймаете это исключение ...