winform窗体假死

我们经常会遇到当执行一个比较大的函数时,窗体会出现假死的现象,给用户的体验不是很好,于是我们遇到了问题,那么就必须解决,我们该如何解决呢,首先在自己的脑里画个问号,接下来我们就一起研究吧!

先分析,这个问题是如何出现的呢!为什么会出现,如何避免出现,避免不了的,如何解决等,下面我们就去解决问题吧,遇到问题不要怕,解决问题是我们成长最快的时候,曾经别人告诉我,不怕不会做,就怕想不到。那我们就进入正题吧!

窗体假死是如何出现的呢?
在调用 testc();函数时,阻塞了UI线程,所以会出现窗体假死现象。(你在吃饭就不能去买东西。)
问题找到了,接下来我们就要想如何解决呢!
思路:1.你在吃饭的时候就不能去买东西,所以我们就必须先吃完饭,再去买。(调用DoEvents函数;主动调用Application.DoEvents 会有线程安全问题。)
思路:2.我可以找个人去帮我买东西。这就是委托,委托一个人去帮你买东西。(新开一个线程)
切记:没有必要的时候,请尽可能的少用线程。线程不易控制。
方案一:调用方法:DoEvents
Application.DoEvents();

public partial class Form1 : Form{public Form1(){

.NET C# winform窗体假死相关推荐

  1. 谈.Net委托与线程——解决窗体假死

    转自:http://www.cnblogs.com/smartls/archive/2011/04/08/2008981.html#2457370 引言 在之前的<创建无阻塞的异步调用>中 ...

  2. C# 解决窗体假死的状态

    异步调用是CLR为开发者提供的一种重要的编程手段,它也是构建高性能.可伸缩应用程序的关键.在多核CPU越来越普及的今天,异步编程允许使用非常少的线程执行很多操作.我们通常使用异步完成许多计算型.IO型 ...

  3. 解决WindowsForm窗体假死的状态

    转载 http://blog.sina.com.cn/s/blog_621e24e201015r29.html 另一篇非常不错的博文:http://www.cnblogs.com/wangshenhe ...

  4. C# 窗体加载假死,异步刷新总结

    文章来源:http://blog.sina.com.cn/s/blog_621e24e201015r29.html 总结:1.control.Invoke 和 Control.BeginInvoke都 ...

  5. WinForm——窗体总结

    常用属性 StartPosition属性 用来获取或设置运行时窗体的起始位置. 语法格式:public FormStartPosition StartPosition { get; set; } 属性 ...

  6. winform程序内存不足或假死的问题

    最近一直在写一个winform程序,对各类文档文件,以及压缩包的内容进行关键字检测. 模型出来之后,执行了一下,发现连续测试后,会有内存不足的问题,导致程序面假死.脑袋懵逼了两天. 回头看我的变量容器 ...

  7. WinForm程序界面假死,寻求完美解决方案

    WinForm程序界面假死,寻求完美解决方案 参考文章: (1)WinForm程序界面假死,寻求完美解决方案 (2)https://www.cnblogs.com/funying/p/3230873. ...

  8. PowerShell:如何用PowerShell创建WinForm窗体?-在PowerShell中使用GUI界面

    从印度小哥那里受到启发,PowerShell不止可以做批处理,自动化.还能做界面做GUI,也能实现很好的交互.因为PowerShell是可以和.Net 程序无缝集成的.所以.Net能用的东西在Powe ...

  9. 浏览器真的能“永不假死”?——六款主流浏览器防假死功能测试

    作者:一石来源:家用电脑 浏览器是大家上网必备的工具,而浏览器假死也是大家在上网时常常所遇到的问题,让人头疼.最近各款主流浏览器纷纷推出了最新版本,我们可以发现一个相同点就是他们都以"防假死 ...

最新文章

  1. 嵌入式Web服务器移植
  2. linux系统安全优化
  3. 服务器响应码302,ajax与302响应代码测试 详细出处参考:http://www.jb51.net/article/42327.htm...
  4. wps合并所有sheet页_Python一键合并上千个Excel表,一天的工作量一小时搞定!下班...
  5. ACM/ICPC 2018亚洲区预选赛北京赛站网络赛 Tomb Raider(map+二进制枚举)
  6. javascript 与vbscript 互相调用
  7. 【本站作品】机器学习数学基础专辑
  8. 模拟alert和confirm
  9. maven provided
  10. 关于 NODE.js 并行线程 worker_threads 的使用与详解。
  11. mysql读写分离 存储过程_MySQL读写分离 · wang-y/Technical-Information Wiki · GitHub
  12. H3C | S6X00系列交换机策略路由配置案例
  13. 使用YAML创建一个 Kubernetes Depolyment
  14. Atitit 性能指标与性能提升的5个原则与性能提升模型
  15. antd vue表单验证_解决antd 表单设置默认值initialValue后验证失效的问题
  16. 计算机网络与综合布线系统设计,谈计算机网络综合布线系统设计
  17. 前后端分离项目,请求头中包含Authorizaton:XX,但是后端getHeader(Authorizaton) 获取不到
  18. Spring bean的生命周期init和destory
  19. Joint fully convolutional and graph convolutional networks for weakly-supervised segmentation of
  20. uniapp里的mounted_uni-app自定义组件mounted无法获取节点信息

热门文章

  1. 这可能是我见过最好的博客系统!(附源码)
  2. android 人际关系 图,六张图说明六种人际关系(朋友圈转疯了)
  3. 怎么防止解决百度转码问题
  4. STM32 RCC设置
  5. YOLO v3 详解
  6. 软件分享|eCognition9.0下载
  7. Dynamo 如何生成管道
  8. Excel如何根据数据生成条形码图片?
  9. 设计功底如何得到提升 高效排版的技巧有哪些
  10. ​Web前端剪切板文本分享到文件发送