public async void Run(IBackgroundTaskInstance taskInstance) { var deferral = taskInstance.GetDeferral(); var posts = await SQLOperator.Current().GetPodcastListBriefAsync(); var tasks = new List <Task>(); foreach (var item in posts) { tasks.Add(Task.Run(async() => { var p = new Podcast(item); try { if (await p.FindUpdated() && Settings.Current.IsPodcastToast) { Toast.SendPodcast(p); Tile.UpdatePodcast($"podcast{p.ID}", p); } } catch (Exception) { } })); } await Task.WhenAll(tasks); deferral.Complete(); }