2010-10-06 61 views

回答

11

您可以用DispatcherPriorityApplicationIdle派遣任務(使用Dispatcher以正常方式),該任務僅在應用程序空閒時執行。

+0

我已經把代碼在構造函數中,發現當我們雙擊應用程序的任務將立即執行。我想知道我的代碼在哪裏可以執行,只要我的應用程序沒有收到任何事件或者消息q是空的。 – 2010-10-07 03:17:58

+0

如果代碼在構造函數中,您將希望分派創建對象(如上面的ApplicationIdle優先級),因爲構造函數將始終在創建時立即運行! Dispatcher.BeginInvoke(new Action(CreateMyObject),DispatcherPriority.ApplicationIdle);這裏CreateMyObject是創建對象的方法,Action是委託 - 它可以包含參數,請參閱:http://msdn.microsoft.com/en-us/library/018hxwa8.aspx – markmnl 2010-10-07 03:40:19

0

逾期備選答案(如備忘錄對自己):

System.Windows.Interop.ComponentDispatcher.ThreadIdle += (_, __) => 
{ 
    Debug.Print("Idle"); 
}; 
相關問題