Ich habe einen TCP-Client mit Apache Mina erstellt. Ich habe eine While-Schleife hinzugefügt, um ständig die Lebendigkeit des Ports zu überprüfen. Sobald die Verbindung auf der Serverseite aufgebaut ist, wird die Schleife unterbrochen und die Verbindung hergestellt. Ich bekomme die Sitzung von der Zukunft und benutze sie, um zu kommunizieren. Gibt es einen besseren Weg, dies zu tun. anstelle von loop kann ich die verbindung bitten, bis sie auf ist.Apache Mina TCP Session-Tracking vom Client
while(true){
try {
ConnectFuture future = ioConnector.connect(new InetSocketAddress(Port),
new TriggerReceiverHandler(), SOCKET_CONFIG);
System.out.println("Message Receiver started and listening on port "+ Port);
Thread.sleep(1000);
session = future.getSession();
if(session != null)
break;
} catch (InterruptedException e) {
e.printStackTrace();
}catch(Exception ce){
if(ce.getCause() instanceof ConnectException)
System.out.println("Retrying connection");
}
}
Eine andere Frage ist, Wenn der Server ist, und ich möchte, dass die Server für die Verbindung bis der jeweils noch halten, was soll ich tun?