private void _downloader_OnFinished(IWebsiteImagesDownloader sender) { _downloader.OnProgress -= _downloader_OnProgress; _downloader = null; _done++; LaunchDownloader(); }
private void LaunchDownloader() { if (_downloader != null) { return; } string url; if (TryDequeueAddress(out url)) { OnStatusChanged?.Invoke(this, url + " in progress"); _downloader = new DownloaderV2(url, _folder, 4); _downloader.OnProgress += _downloader_OnProgress; _downloader.OnFinished += _downloader_OnFinished; _downloader.Start(); } else { _downloader = null; } }
private void _downloader_OnProgress(IWebsiteImagesDownloader sender, int progress, int total) { OnProgerss?.Invoke(this, progress, total, _done, _done + Queue.Count); Trace.WriteLine($"{progress}/{total}"); }