Apache VFS sftp-正在获取多个文件对象创建多个会话或通道?

时间:2014-11-11 13:01:54

标签: java sftp jsch apache-commons-vfs

请考虑以下代码:

FileSystemManager fsManager = VFS.getManager();
FileObject sftpDir = fsManager.resolveFile("sftp://username:password@host/pub/downloads/");
FileObject child1 =  sftpDir.getChild("child1.data");
FileObject child2 =  sftpDir.getChild("child2.data");
InputStream s1 = child1.getContent().getInputStream();
InputStream s2 = child2.getContent().getInputStream();

在Jsch底层,创建了两个独立的会话,还是一个会话和两个通道?

1 个答案:

答案 0 :(得分:1)

一个会话中有两个/多个频道。

getInputStream实现调用SftpFileSystem.getChannel(),它会创建新频道或重新使用现有空闲频道。