请教winform界面卡死的排查方法

jwb7832007 2018-04-23 06:39:42
写了一个监控程序,扔阿里云上,系统是win2012(本地win10也卡死),但是现在有个程序运行随机时间之后界面会卡死。。。。
但是后台线程还活着,存数据库、监听tcp端口信息都没问题

我一开始以为是不停操作UI控件造成的,然后我消减了一些动作。
目前有2个线程会操作UI控件,一个5s左右更新一次listview,一个10s左右更新一个很小数据量的datagridview 和 textbox,
操作全部是用的BeginInvoke

请问我应该怎么排查这种问题
...全文
1268 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
jwb7832007 2018-04-27
  • 打赏
  • 举报
回复
引用 1 楼 yaotomo 的回复:
在程序里加一些日志,try catch到发生错误的时候就记录一下
谢谢,我找到原因了。 前几天只是UI卡死,后来突然出现程序崩溃了,我在系统的应用日志里查到了出错的代码了。 具体原因跟这个帖子里的情况一样:https://www.cnblogs.com/kevin-Y/archive/2011/03/12/1982012.html 从系统日志的出错代码catch异常之后,收到错误信息:创建窗口句柄出错。 其实就是创建控件太多,我本以为系统会回收,没关系的。 最后发现可能创建的速度太快太多导致系统没来得及回收,现在改了,暂时还没测试,应该是没有问题了,错误特征毕竟对的上。
yaotomo 2018-04-25
  • 打赏
  • 举报
回复
在程序里加一些日志,try catch到发生错误的时候就记录一下

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧