社区
C#
帖子详情
winform后台大批量数据操作时, 如何防止UI一直没响应啊?
fengforever
2007-12-20 10:35:00
我已经用了另外的一个线程去处理数据了, 可UI还是一直死在那里. 直到执行完了才能动.
...全文
247
10
打赏
收藏
winform后台大批量数据操作时, 如何防止UI一直没响应啊?
我已经用了另外的一个线程去处理数据了, 可UI还是一直死在那里. 直到执行完了才能动.
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
newnan
2007-12-21
打赏
举报
回复
呵呵,没看见你已经是用了另外的一个线程。
应该不会这样,
newnan
2007-12-21
打赏
举报
回复
用独立的线程去处理或者异步调用
leehong0704
2007-12-21
打赏
举报
回复
多线程的问题,在主线程里面开一个新的线程用于计算,
chxljtt
2007-12-21
打赏
举报
回复
正常,你使用多線程,給它顯示一個進度條這樣美觀,而且不會讓客戶感覺死機
far_2
2007-12-21
打赏
举报
回复
是不是主线程被阻塞在程序的某个地方了呀?
ccmfj
2007-12-21
打赏
举报
回复
直接把“处理数据”的部分独立成一个进程来运行(一定要把“处理数据”的部分和主进程尽量剥离),千万不要和主进程搅和在一起,否则,即使你多开了好几个个进程,主界面也还是会卡在那边。
wangtable
2007-12-21
打赏
举报
回复
使用backgroundWorker 用它的bgwWorking_DoWork和bgwWorking_RunWorkerCompleted事件,可以使你的C/S UI不会死,直到程序结束,进度停止。
我自横刀香甜笑
2007-12-21
打赏
举报
回复
不知道你是怎么处理的
yhy0611
2007-12-21
打赏
举报
回复
多线程绝对可以解决,一定是你把主线程阻塞了~!
jinjazz
2007-12-20
打赏
举报
回复
代码看看,应该是你把主线程阻塞了
C#处理大容量
数据
,及多线程简单应用
应用线程解决界面的假死状态,应用高级SQL语句执行快速导入、导出
数据
操作
。
异步调用解决
winform
窗体假死
异步调用是CLR为开发者提供的一种重要的编程手段,它也是构建高性能、可伸缩应用程序的关键。在多核CPU越来越普及的今天,异步编程允许使用非常少的线程执行很多
操作
。我们通常使用异步完成许多计算型、IO型的复杂、耗
时
操作
,去取得我们的应用程序运行所需要的一部分
数据
。在取得这些
数据
后,我们需要将它们绑定在
UI
中呈现。当
数据
量偏大
时
,我们会发现窗体变成了空白面板。此
时
如果用鼠标点击,窗体标题将会出现”失去
winform
桌面假死
引言 在之前的《创建无阻塞的异步调用》中,已经介绍过异步调用的编写步骤和实施原理。异步调用是CLR为开发者提供的一种重要的编程手段,它也是构建高性能、可伸缩应用程序的关键。在多核CPU越来越普及的今天,异步编程允许使用非常少的线程执行很多
操作
。我们通常使用异步完成许多计算型、IO型的复杂、耗
时
操作
,去取得我们的应用程序运行所需要的一部分
数据
。在取得这些
数据
后,我们需要将它们绑定在
UI
中呈
C#实现
后台
大量运算并刷新控件的方法
C#在主线程内进行大量任务运算并要求控件对此进行刷新
响应
时
,有可能导致控制显示无法刷新,主要原因是讲大量任务与处于
UI
线程中的控件刷新写在了一起。例如,进行大规模运算
时
,如果要在Progress控件中显示运算进度就可能出现这种情况。有三种方式可以解决这一问题。第一种方法:单线程中使用Application.DoEvent()函数。确保控件完成刷新再执行下面的语句。这种方法的优点是不需要多
C#
Winform
应用系统如何快速开发?看完这篇文章就懂了!
在实际的业务中,往往还有很多需要使用
Winform
来开发应用系统的,如一些HIS、MIS、MES等系统,由于
Winform
开发出来的系统界面友好,
响应
快速,开发效率高等各方面原因,还有一些原因是独立的
WInform
应用系统方便部署使用,可以快速的在内部系统中安装使用,小型的系统往往不需要涉及到云服务等分布式的处理,那么界面的流畅使用、友好呈现、快速的开发
响应
等特点就有非常明显的优势了。 点击获取
WinForm
界面开发工具 本篇不针对性的讨论
Winform
开发的优缺点,只是让大家了解常规
Winform
开发
C#
111,112
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章