我有一個WPF應用程序,我希望可以在啓動時分離兩個數據研究後臺任務。這些後臺任務將打開,解析和關閉文件,然後更新SqlServer數據庫中的數據。這些任務都不需要返回任何內容到顯示線程。這些後臺任務不必運行完成,但我需要避免將文件打開或Sql Server處於意外狀態。用戶可以在任務開始後隨時關閉應用程序。我正在使用來自System.Threading.Tasks命名空間的資源。舉一個例子:如何正常關閉WPF應用程序並運行後臺任務?
var IncorporateTask = Task.Factory.StartNew(CommentIncorporateTask);
var incorporateTaskDone = IncorporateTask.ContinueWith((antecedent) => IncorporateTaskFinalize(), TaskScheduler.FromCurrentSynchronizationContext());
我是否需要採取任何措施,確保這些線程完全關閉掉,並不會延遲關閉應用程序的用戶體驗?
隨着BackGroundWorker有一個支持取消。 – Paparazzi
@Blam,謝謝我現在正在研究這個。 – JimBoone