c#运用this.invoke() 在多线程时对UI进行修改
2021-03-21 22:26
标签:资源 nop bsp 异步执行 camera his 修改 包括 ble Invoke()的作用是:在应用程序的主线程上执行指定的委托。一般应用:在辅助线程中修改UI线程( 主线程 )中对象的属性时,调用this.Invoke(); /* 相机打开回调 */ 什么是进程呢?当一个程序开始运行时,它就是一个进程,进程所指包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的,线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即不同的线程可以执行同样的函数。 Control.Invoke 方法 (Delegate) :在拥有此控件的基础窗口句柄的线程上执行指定的委托。 c#运用this.invoke() 在多线程时对UI进行修改 标签:资源 nop bsp 异步执行 camera his 修改 包括 ble 原文地址:https://www.cnblogs.com/xihong2014/p/13898991.html
private void OnCameraOpen(object sender, EventArgs e)
{
this.Invoke(new Action(() =>
{
btnOpen.Enabled = false;
btnClose.Enabled = true;
}));
}
Control.BeginInvoke 方法 (Delegate) :在创建控件的基础句柄所在线程上异步执行指定委托。
Control的Invoke和BeginInvoke的参数为delegate,委托的方法是在Control的线程上执行的,也就是我们平时所说的UI线程。
文章标题:c#运用this.invoke() 在多线程时对UI进行修改
文章链接:http://soscw.com/index.php/essay/67348.html