NET FTP Library
DownloadFilesInParallel Method
Example 






KellermanSoftware.NetFtpLibrary Namespace > FTP Class : DownloadFilesInParallel Method
The key of the dictionary is the local file path and the value is the ftp file path
Download files in Parallel using two threads with two FTP connections
Syntax
'Declaration
 
Public Sub DownloadFilesInParallel( _
   ByVal files As System.Collections.Generic.Dictionary(Of String,String) _
) 
'Usage
 
Dim instance As FTP
Dim files As System.Collections.Generic.Dictionary(Of String,String)
 
instance.DownloadFilesInParallel(files)
public void DownloadFilesInParallel( 
   System.Collections.Generic.Dictionary<string,string> files
)
public procedure DownloadFilesInParallel( 
    files: System.Collections.Generic.Dictionary
); 
public function DownloadFilesInParallel( 
   files : System.Collections.Generic.Dictionary
);
public: void DownloadFilesInParallel( 
   System.Collections.Generic.Dictionary<string*,string*>* files
) 
public:
void DownloadFilesInParallel( 
   System.Collections.Generic.Dictionary<String^,String^>^ files
) 

Parameters

files
The key of the dictionary is the local file path and the value is the ftp file path
Example
//Create some test files
Dictionary<string, string> files = new Dictionary<string, string>();
 
for (int i = 0; i < 10; i++)
{
    string filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "uploadfile" + i + ".txt");
    File.WriteAllText(filePath, "This is a test");
    files.Add(filePath, Path.GetFileName(filePath));
}
 
Stopwatch watch = new Stopwatch();
 
FTP ftp = new FTP(); //Trial Mode            
//FTP ftp = new FTP("place user name here", "place license key here");
 
// set the name of the FTP server( its URL )
ftp.HostAddress = "ftp.fsz.bme.hu"; // a hungarian university. change this to your ftp server
ftp.UserName = "anonymus"; // replace with your user name
ftp.Password = "user@mail.com"; // replace with your password
 
ftp.Connect();
 
ftp.CurrentDirectory = "/";
 
ftp.UploadFilesInParallel(files);
 
//Delete local files
foreach (var file in files)
{
    File.Delete(file.Key);
}
 
ftp.DownloadFilesInParallel(files);
 
ftp.Disconnect();
'Create some test files
Dim files As New Dictionary(Of String, String)()
 
For i As Integer = 0 To 9
    Dim filePath As String = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "uploadfile" & i & ".txt")
    File.WriteAllText(filePath, "This is a test")
    files.Add(filePath, Path.GetFileName(filePath))
Next i
 
Dim watch As New Stopwatch()
 
Dim ftp As New FTP() 'Trial Mode
'FTP ftp = new FTP("place user name here", "place license key here");
 
' set the name of the FTP server( its URL )
ftp.HostAddress = "ftp.fsz.bme.hu" ' a hungarian university. change this to your ftp server
ftp.UserName = "anonymus" ' replace with your user name
ftp.Password = "user@mail.com" ' replace with your password
 
ftp.Connect()
 
ftp.CurrentDirectory = "/"
 
ftp.UploadFilesInParallel(files)
 
'Delete local files
For Each file In files
    System.IO.File.Delete(file.Key)
Next file
 
ftp.DownloadFilesInParallel(files)
 
ftp.Disconnect()
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

FTP Class
FTP Members