Clinet/Server在工作线程中刷新页面数据的方法
Worker线程不能修改UI线程的状态(比如文本框里面的内容)。解决的办法是写一个用来更新文本框内容的函数,然后在Worker线程里面通过BeginInvoke来利用delegate调用这个函数更新文本框。具体代码如下:
void ThreadEntry(){int i = 1;string name = Thread.CurrentThread.Name;while (i > 0){Thread.Sleep(1000);dsync.WaitOne(); //WaitOne方法是阻塞方法,如果string msg = string.Format("The current index is {0}", i);this.BeginInvoke(new ShowDelegate(ShowMsgBox), msg);i++;}}
调用方法: private void OK_Click(object sender, EventArgs e){Thread worker = new Thread(ThreadEntry);worker.Start();}更新方法:private void ShowMsgBox(string tmp){logOutput.Text += tmp + "\r\n";}
BTW,如果需要控制工作线程的执行,阻塞和继续执行,可以使用System.Threading.ManualResetEvent类的 WaitOne()、Set()、Reset()方法。
转载于:https://www.cnblogs.com/haizzh/p/6952246.html
Clinet/Server在工作线程中刷新页面数据的方法相关推荐
- access 套用表格_在Excel 2013工作表中导入Access数据的方法
Excel与Access同为数据处理软件,它们在功能上各有侧重.Access精于数据管理和分类,而Excel则长于数据统计和计算.这两个软件处理过的数据是可以互相调用的,综合应用这两个软件,取长补短, ...
- 【Based Android】Android Sensor感应器介绍(二)线程中刷新UI 创建一个android测力计...
上一篇文章http://www.cnblogs.com/octobershiner/archive/2011/11/06/2237880.html介绍了sensor的基本知识以及一个使用其中加速度感应 ...
- EXC_BAD_ACCESS(code=2,address=0xcc 异常解决 及 建议不要在子线程中刷新界面
EXC_BAD_ACCESS(code=2,address=0xcc 异常解决 及 建议不要在子线程中刷新界面 参考文章: (1)EXC_BAD_ACCESS(code=2,address=0xcc ...
- Win32:MessageBox、AfxMessageBox、及工作线程中的对话框
首先我们要清晰一点,同样是线程,但创建线程方式不同,由于创建线程的内部实现不同,也就意味着对后期影响是不一样的. 三种创建线程的方式 C语言的:__beginthread()/__beginthrea ...
- javascript(js)自动刷新页面的实现方法总结
自动刷新页面的实现方法总结: 1) <meta http-equiv="refresh"content="10;url=跳转的页面"> 10表示间隔 ...
- 关于IOS系统,H5页面操作history.go(n)回退页面时不会刷新页面数据的问题
关于IOS系统 H5页面操作history.go(n)回退页面时不会刷新页面数据的问题 在我们从操作h5页面时,离开当前页面后,在使用返回键或者history.go(n)再次回到页面,有时是需要刷新当 ...
- 微信小程序 通过wx.redirectTo,实现单页面刷新效果 & 下拉刷新页面数据效果
微信小程序 通过wx.redirectTo,实现单页面刷新效果 & 下拉刷新页面数据效果 一: 使用 wx.redirectTo(),实现页面刷新数据效果 API说明: 关闭当前页面,跳转到应 ...
- 清空SQL Server数据库中所有表数据的方法(转)
清空SQL Server数据库中所有表数据的方法 其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间可能形成相互约束关系,删除操作可能陷入 ...
- ASP.NET刷新页面的六种方法
ASP.NET刷新页面的六种方法 第一: private void Button1_Click( object sender, System.EventArgs e ) { Respons ...
最新文章
- android 带记忆功能的播放器源码,Android实现阅读进度记忆功能
- 后台报错 新导入的项目报错
- UA MATH567 高维统计I 概率不等式5 推广Hoeffding不等式与Khintchine不等式
- go get安装第三方包的前提条件和步骤
- 基于socket网络编程技术实现TCP和UDP的流程详解及实例
- Ant Design Pro+Electron+electron-builder实现React应用脱离浏览器,桌面安装运行
- Ospf在广播网络中建立邻居关系的详细过程
- SVN版本管理trunk及branch相关merge操作
- 三种model 在lfw 上的精度
- Java 稳步成长、Kotlin 崛起、Go 保持独特风格,2020 年各大编程语言发展趋势一览...
- excel制作录入和查询系统_叮咚!您有一份Excel人员信息查询系统,请您查收~
- 2.C++深入理解 面向对象部分1
- java 报表模版 打印_Java报表工具技巧--如何使用Style Report制作以及打印标签
- rust自创服务器_萌新教大家搭建Rust服务器(局域网和公网)
- 第五章-对单词进行分类和标记
- SharePoint 网站的导入导出
- C语言简单实现世界协调时UTC与北京时间BJT转换
- 插件目标[置顶] Maven自定义绑定
- Shader混合模式--正片叠底、滤色、叠加
- Apache httpd服务器下载及安装