雖然做了一些取證考古調查在老的應用程序我要保持我碰到這個傳來:爲什麼用空的Delegate調用ThreadStart?
這是一個WPF應用程序,這是最近轉換爲.NET 4.0和該代碼後臺工作
if(bgWorker1.IsBusy || bgWorker2.IsBusy)
{
Thread.Sleep(100);
Application.Current.Dispatcher.Invoke(
System.Windows.Threading.DispatcherPriority.Background,
new System.Threading.ThreadStart(delegate { })
);
}
內運行
1 - 通過使用無操作委託來調用線程(主GUI)會獲得什麼樣的副作用。另外兩個線程也對主要的gui線程執行調用,但只有這個線程纔會將優先級設置爲除Normal以外的其他任務(但它們使用Action而不是TreadStart)。
2 - 我的案例與這個應用程序有着奇怪的相似之處,並告訴我這可能是原因。 (圍繞優先級和主要的gui線程,無外觀原因)。
感謝
對我來說看起來毫無意義...... – japreiss
直到mainthread處理消息時才調用可能的塊。 – CodesInChaos