如何从客户端检测到服务器已断开jsch会话?
答案 0 :(得分:1)
你的意思是除了会话对象上的isConnected()函数吗?
答案 1 :(得分:1)
如果使用setPortForwardingL()设置端口转发,则可以使用此类函数来验证隧道(和连接)是否仍处于活动状态。 (该示例隧道传送Echo服务)。
public boolean performCheck() throws Exception {
Socket socket;
try {
socket = new Socket("localhost", 7);
if (socket.isConnected()) {
socket.close();
return true;
}
} catch (UnknownHostException e) {
// nothing special
} catch (IOException e) {
// nothing special
}
return false;
}
答案 2 :(得分:1)
Session.isConnected()
对我有用但必须确保你打电话
Session.setServerAliveInterval(int)
之前
Session.connect()