WPF Dispatcher介紹


微軟在WPF引入了Dispatcher,那么這個Dispatcher的主要作用是什么呢?
Dispatcher的作用是用於管理線程工作項隊列。
主線程負責接收輸入、處理事件、繪制屏幕等工作,這樣一來,UI界面是主線程創建的,因為子線程不能直接更新由主線程維護的UI界面,所有調用Dispatcher更新UI。

實例:WPF更新UI
方式一

new Thread(()=>{
	this.Dispatcher.Invoke(new Action(()=>{
		//通知主線程去完成更新
	}));
}).Start();

 方式二

Application.Current.Dispatcher.Invoke(new Action(() => {
	Application.Current.MainWindow.Title = "我修改過的窗體標題";
}));

 方式三:異步機制

var task = Application.Current.Dispatcher.BeginInvoke(new Action(() => { 
	Application.Current.MainWindow.Title = "我修改過的窗體標題"; 
}));
task.Completed += new EventHandler(task_Completed);
static void task_Completed(object sender, EventArgs e)
{
	MessageBox.Show("任務已經完成");
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM