Example #1
0
        private async Task RecreateDownloadAsync()//有未完成的任务,重新创建
        {
            var xmlList = DownloadXmlHelper.GetCurrentDownloads();

            if (xmlList.Count < 1)
            {
                return;
            }

            foreach (var xml in xmlList)
            {
                try
                {
                    var download = await BiliDashDownload
                                   .RecreateAsync(xml, ApplicationData.Current.LocalSettings.Values["biliUserSESSDATA"] as string);

                    this.activeDownloadList.Add(download);
                }
                catch (Exception ex)
                {
                    var dialog = new ExceptionDialog(ex.Message, XamlRoot);
                    await dialog.ShowAsync();
                }
            }
        }
Example #2
0
        private async Task CheckDownloadAsync()//检查一下未完成的任务
        {
            if (DownloadXmlHelper.CheckXml() == false)
            {
                return;                                       //不存在xml,直接返回
            }
            await RecreateDownloadAsync();

            var tasks = new List <Task>();

            foreach (var download in activeDownloadList)
            {
                tasks.Add(download.RestartAsync());
            }
            await Task.WhenAll(tasks);
        }