C# WinForm程序处理后台繁忙导致前台控件假死现象解决方法
作者:junjie 时间:2021-09-02 12:22:44
特别是针对循环或timer处理中需要在窗体控件显示数据时,因后台处理过度繁忙而出现没刷新或者假死现象时,可以使用
Application.DoEvents();
Application.DoEvents()的作用
private void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < 10000; i++)
{
label1.Text = i.ToString();
Application.DoEvents();
}
}
测试了一下,没有Application.DoEvents()的时候,Label基本处于假死机状态,最后显示一个9999,加上后会数字变换正常显示。
从这个测验后DoEvents的功能,应该DoEvents就好比实现了进程的同步。在不加的时候,因为优先级的问题,程序会执行主进程的代码,再执行别代码,而加了以后就可以同步执行。
标签:C#,WinForm,控件假死
0
投稿
猜你喜欢
Springboot实现高吞吐量异步处理详解(适用于高并发场景)
2023-08-20 23:40:35
Java Comparable和Comparator对比详解
2022-08-13 01:28:08
C#实现将字符串转换成日期格式的方法
2021-07-18 06:19:11
Netty分布式高性能工具类同线程下回收对象解析
2023-05-24 22:00:55
Android布局之GridLayout网格布局
2022-04-24 22:49:46
Java构造函数的相互调用代码示例
2023-07-01 21:42:11
Android编程实现网络图片查看器和网页源码查看器实例
2021-07-27 23:48:40
Java 自定义Spring框架与核心功能详解
2023-11-29 05:45:19
Android Activity生命周期调用的理解
2023-05-13 14:15:42
Java实现去除文档阴影的示例代码
2023-08-31 11:45:48
SpringMVC统一异常处理实例代码
2021-05-31 02:29:26
C#通过PInvoke调用c++函数的备忘录的实例详解
2023-11-25 12:53:08
C#基础学习系列之Attribute和反射详解
2022-07-19 17:55:40
Spring Boot @Conditional注解用法示例介绍
2023-04-18 22:51:51
SpringBoot整合WebSocket实现后端向前端发送消息的实例代码
2021-10-30 19:24:56
Android AlertDialog(对话框)实例详解
2023-07-19 11:37:55
Android仿QQ空间动态界面分享功能
2023-11-13 11:03:58
详解Java编程中线程同步以及定时启动线程的方法
2021-08-31 10:59:20
Java 编程中十个处理异常的建议
2022-10-27 11:34:41
谈谈Java中自定义注解及使用场景
2022-08-28 04:45:39