2

我有一個關於城市風格應用程序(winrt)中的任務的問題。城市風格應用程序中的任務

線程不可用(至少從Windows 8.1/windows phone 8.1開始),所以要執行異步操作,我們現在必須使用Task。

  • 當我創建任務,並調用運行所行的是創造新的主題?如果有,是否有辦法殺死/停止該線程?

  • 所有任務都應用procces的一部分 - 所以當我打電話Application.Current.Exit()它停止所有任務(如果我沒有正確停止/關閉/結束他們?)如果不是它是否possuble?在Thread中,你可以設置IsBackground屬性強制關閉他們的應用程序關閉。

  • 當應用程序暫停時,任務會發生什麼?什麼是指導方針?

謝謝你的幫助。

回答

1

當我創建任務和調用運行它創建新的線程?如果有,是否有辦法殺死/停止該線程?

它不會創建一個新線程,它會使用一個線程從線程池。這假設你沒有通過任何其他TaskScheduler

如果是的話有辦法殺死/停止線程?

有一種方法可以通過CancellationTokenCancellationTokenSource結構進行協作取消。無法中止Task,如Thread.AbortTask != Thread

所以當我打電話Application.Current.Exit()不停止所有任務

線程池線程,默認情況下的背景下,他們不會延長應用程序的生命就像一個前臺線程。一旦應用程序關閉,您可以安全地假設所有線程都被終止。

+1

感謝您的確認!這是我尋找的東西:) –

相關問題