Java, keep alive соединение
есть такой код.
это IRC-"клиент"
static public class client extends Thread {
Socket s = null;
public void run() {
String nick = "ник_был_тут";
String server = "сервер_был_тут";
String ctcpAddr = "";
String channel = "#канал_был_тут";
int port = 6667;
PrintWriter out = null;
BufferedReader in = null;
String fromServer;
try {
s = new Socket(server, port);
out = new PrintWriter(s.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(s.getInputStream()));
} catch (UnknownHostException e) {
System.out.println("Cannot find host "+server+".");
System.exit(1);
} catch (IOException e) {
System.out.println("Couldn't get I/O for the connection to "+server+".");
System.exit(1);
}
//connecting to channel
out.println("NICK "+nick);
out.println("USER logger '' 'irc.wenet.ru' :lol");
out.println("JOIN "+channel);
try {
while ((fromServer = in.readLine()) != null) {
System.out.println(fromServer);
out.println("PONG :irc2.msk.wenet.ru");
}
} catch(IOException e) {
//пытаться тут
}
}
}
но в отличии скажем от мирки при обрые соединения он подыхает, а не пытается его восстановить
как я понял пытаться восстановить соединение надо на строке "//пытаться тут"
но я не могу сообразить как. подскажите пожалуйста!
не алогритм, а код если можно :)
2Alex Lomov
да, выдает
вот там где пишется
//пытаться тут
программа окажется только если было IOException .
у тебя программа выдаёт IOException ?
если нет, то и нет толку добавлять что-либо в "//пытаться тут"