[英]Progress update from already running BackgroundTask?
當主應用程序啟動時,主應用程序如何從已經運行的后台任務中獲取進度通知? 我已經注冊了一個由SystemTriggerType.TimeZoneChange
觸發的后台任務(為簡單起見)。 這是代碼:
public sealed class Class1:IBackgroundTask
{
public async void Run(IBackgroundTaskInstance taskInstance)
{
var defferal = taskInstance.GetDeferral();
await Task.Delay(3000);
for (uint i = 1; i < 100; i++)
{
await Task.Delay(1000);
taskInstance.Progress = i;
}
defferal.Complete();
}
}
在進度欄中正確報告進度。 在應用程序啟動時,我重新附加了Completed和Progress事件
foreach (var i in BackgroundTaskRegistration.AllTasks)
{
i.Value.Completed += task_Completed;
i.Value.Progress += task_Progress;
}
但是我想如果任務已經在運行,taskInstance不會更新...
有什么建議么 ?
看一下后台任務示例 。 它確實可以完成您的嘗試,並且可以正常更新。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.