C# Eş Zamanlı Dosya İndirme Sorunu...
-
DuPi bunu yazdı
public void DownloadFile(string urlAddress, string location)
{
using (webClient = new WebClient())
{
webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(Completed);
webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(ProgressChanged);
Uri URL = urlAddress.StartsWith("http://", StringComparison.OrdinalIgnoreCase) ? new Uri(urlAddress) : new Uri("http://" + urlAddress);
sw.Start();
try
{
webClient.DownloadFileAsync(URL, location);
// webClient.DownloadFile(URL, location);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
evet bahsettiğim gibi hocam Asycn method kullanıyorsun. Eğer downloadFile methodunu asycn yapıp. Methodu çağırırken önüne await koyarsan senkron biçimde işlemleri yapabilirsin.
Ayrıca holy'nin bahsettiği gibi Parallel Foreach ile çok güzen ve kolayca asenkron işlem yürütebilirsin.
Zaten konuyu çözmüşsün ama ek bilgi olarak vermek istedim.
-
metin2 patcher mi yazıyorsun :)
