簡體   English   中英

后台任務的進度報告

[英]Progress reporting from background task

我有一個后台任務,將文件導入數據庫。 我希望用戶查看當前正在發生什么(收集文件/導入文件),當前正在處理哪個文件以及任務已進行了多長時間。 我該如何輕松地做到這一點? Model和Controller之間的交互是如此緊密,以至於我幾乎可以將導入代碼放入窗口的代碼文件中,並直接更改進度條值等。 你怎么看? 您將如何解決這個問題?

使用BackgroundWorker ,非常適合此任務。 它可以使用ReportProgress方法將當前進度通知UI,這將在UI線程上引發ProgressChanged事件(這意味着您不必擔心跨線程調用和Invoke

在許多情況下,進度條可能會誤導您,因此我建議您謹慎設定期望值。

如果最終確實將進度顯示為某種百分比,請根據文件大小考慮不同的加載時間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM