c# 加载界面运行会有小卡感觉

如图界面,进此界面会有小卡感觉,原因我认为有以下几点1.界面数据是循环读取数据库,然后遍历dataset用for循环将数据填充进去2.界面的某些列(有四列数据),不是读取... 如图界面,进此界面会有小卡感觉,原因我认为有以下几点1.界面数据是循环读取数据库,然后遍历dataset用for循环将数据填充进去2.界面的某些列(有四列数据),不是读取dataset,而是手动送进去的3.数据量过多,其实也就是39行,列也就是11行罢了。4.这些数据的处理放在了一个线程Thread上,Thread.Sleep(1000);感觉重点在这里,我sleep2000好一点,sleep5000好很多,但是sleep1000已经是我需要等待的时间极限了,超过了数据监视慢了还不如卡一点算了。其次我之前测试,把这些代码分了3个线程,每个线程也等待了1000s,效果没多大。5.线程部分代码如图。请教各位大神有好的办法解决低等待高效率的办法吗? 展开
 我来答
syht2000
高粉答主

2016-10-21 · 关注我不会让你失望
知道大有可为答主
回答量:3万
采纳率:79%
帮助的人:1.4亿
展开全部
数据量其实并不大,你用多个线程没太多意义。因为没实际测试过,个人建议如下:
1、感觉你的数据似乎并不是全部变更的(比如说那个流程应该就是固定的),我不知道你那个Grid方法是如何做的,个人感觉你似乎完全重新加载了,建议可以保存前一个ds,在后面收到新的DS后,与前一个比较,找出变化后的行,然后直接将变化的数值更改到你的表格上(也就是直接对datagridview的某个单元格赋值),而不是重新加载表格。
2、比较终极的方法人个觉的是不用这种数据表格,而是直接用GDI绘图,在图像上绘出你的数据(界面觉的你可以优化一下,用生产流程图表那种方式,比表格直观,当然如果你在图上继续表表格也没什么问题)
追问
没有全部定时的获取,只循环获取了除了缸号,名称后的内容
阳光的雷咩咩
2016-10-21 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7886万
展开全部
Grid()函数贴主要部分出来。
更多追问追答
追问

其实不多,就这些代码

追答
有没有用invoke?跨线程调用窗体控件难道不报错?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式