zoukankan      html  css  js  c++  java
  • 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("任务已经完成");
    }
    
  • 相关阅读:
    Node js 入门指南(1)
    书单
    JavaScript
    Web框架的本质
    Linux运维面试(填空题)
    Ubuntu更换国内源
    动态路由-OSPF
    CentOS7安装桌面环境
    anaconda系统安装&kickstart文件
    Tomcat之分布式session共享(MSM)
  • 原文地址:https://www.cnblogs.com/sntetwt/p/9662661.html
Copyright © 2011-2022 走看看