我试图在不使用 sftp.disconnect() 方法的情况下突然断开 Java 中的 SFTP 连接。使用它来构建一个集成测试,检查每次清理是否发生。请看下面的测试:
public void checkDisruptedConnections() throws JSchException, InterruptedException {
ChannelSftp sftp = setupSftp(null);
sftp.connect();
try {
//disrupt connection OVER HERE
} catch (Exception e) {
assertEquals("1", jedis.get(SESSION_KEY));
}
waitForConnectionClose();
assertEquals("0", jedis.get(SESSION_KEY));
}