winform程序内存不足或假死的问题】的更多相关文章

最近一直在写一个winform程序,对各类文档文件,以及压缩包的内容进行关键字检测. 模型出来之后,执行了一下,发现连续测试后,会有内存不足的问题,导致程序面假死.脑袋懵逼了两天. 回头看我的变量容器List,使用的是静态变量,思路如下: 上图是修改之后的  最初为  : private static List<Inform_Model> Model_List =new List<Inform_Model>(); 但是! static静态全局变量的生命周期是跟随程序结束而GG的:…
用DataGridView无分页绑定一个几千条数据的查询,查询的时候界面直接卡死十几秒,用户体验非常不好,因此用异步操作解决界面卡死的问题原本场景:点击[查询]后,界面直接卡死优化场景:点击[查询]后,界面可以随意移动,感觉不到后台在做大量数据的读取和绑定 private void btnQuery_Click(object sender, EventArgs e) { // 查询按钮点击后,按钮文本由"查询"改为"加载中",并把按钮状态改为不可点击 btnQuer…
当有大量数据需要计算.显示在界面或者调用sleep函数时,容易导致界面卡死,可以采用多线程加委托的方法解决 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System…
问题状态: java 程序 日志采用 log4j 运行时由另一个管理进程拉起,程序在后台运行. 现象: 程序后台运行时,运行一段时间后假死 分析原因: 尝试打印输出,定位假死的具体位置,发现出现假死的位置不固定,甚至是基本的日志输出都有问题 尝试手动启动,程序能正常运行,并且发现有大量的打印输出到终端 结论: 程序在终端有打印信息输出,在后台运行后,信息无法输出到终端, 打印信息过多后,缓冲区写满,程序停止运行,造成假死现象 解决方法: 后台运行的程序不打印输出信息到终端 由于程序采用log4j…
断点设置不合理引发应用启动慢问题java idea应用启动很慢|非常慢|超级慢的问题排查! 解决关于应用启动超慢这个问题,其实两年前就已经遇到过,https://blog.csdn.net/li396864285/article/details/52944814 当时的解决方案时,把所有断点Mute breakPoints去掉,然后启动就正常了. 排查如今,再次遇到这个问题,不能再忍了,该问题必须查明详细的原因,反复debug启动多次都是一样的结果,超慢,阻塞在连接zk的地方就不动了,debug…
故事的开端是这样的,小白是一个程序员,他确实也是一个小白,目前还在程序员发展的道路上,兢兢业业的小心求学. 有一天,小白接到一个任务,完成一个Winform程序,附加一个功能就是可以读IC卡. 小白终于有机会一展身手了!!不免内心兴奋. 再联系了IC卡厂家,拿到开发SDK后,小白不久就碰到了以下难题: 1.厂家的读卡器是通过API给定的事件ReadCard()驱动的,而读卡器在ReadCard事件驱动以后,可以在往后的3s以内侦测是否有IC卡片在附近: (1)3s内,有IC卡在设备附近,立即读卡…
在GIS数据处理中,数据量大是一个非常伤脑筋的问题.最近,在写一个CAD注记转Shapefile文件时,又遇到这个问题. 曾经处理一次数据,达130万个点,即测试区域内的栅格转成点全部处理,程序是写好了,但速度之慢啊,关键问题是处理到一半报奇怪的错误,最后只好将数据分成6份,去实验室开了6台机子来分别处理,最后合成在一起.经历过这件事后,我就去请教老师,他们在用程序处理GIS大数据时(特别是当数据带有空间信息),怎么来解决类似的问题?他总结了两方面:一是硬件上,配置要高,对于特别大的数据考虑使用…
WinForm窗体在使用过程中如果因为程序等待时间太久而导致窗体本身假死无法控制,会严重影响用户的体验,这种情况大多是UI线程被耗时长的代码操作占用所致,可以新开一个线程用来完成耗时长的操作,然后再将结果返回到UI中呈现,这样就不会占用到UI线程了,也就不会假死了,涉及Control的更新需要用到BeginInvoke方法 private void button1_Click(object sender, EventArgs e) { Thread t1 = new Thread(delegat…
运行WinForm程序时,如果后台执行比较费时的操作,前天UI就会假死卡住,很影响使用感受,这里我们简单的解决一下这个问题 using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using S…
C#  winform窗体假死 我们经常会遇到当执行一个比较大的函数时,窗体会出现假死的现象,给用户的体验不是很好,于是我们遇到了问题,那么就必须解决,我们该如何解决呢,首先在自己的脑里画个问号,接下来我们就一起研究吧! 先分析,这个问题是如何出现的呢!为什么会出现,如何避免出现,避免不了的,如何解决等,下面我们就去解决问题吧,遇到问题不要怕,解决问题是我们成长最快的时候,曾经别人告诉我,不怕不会做,就怕想不到.那我们就进入正题吧! 窗体假死是如何出现的呢? 在调用    testc();函数时…