全部博文(788)
分类:
2008-10-20 10:36:23
应该不至于吧,你几十条都占用了CPU 8%,可能是写法有问题吧。
你干嘛要不停地判断呢?有时间做判断不如直接写上去好了。
2000多条记录,刷新一次应该没多长时间。
首先说明
1、首先跟踪一下,看看时间都花在那里了
2、如果你的SQL语句不是特别奇怪,那么最多的时间是花在重画StringGrid上
3、画StringGrid的时候不要一下子都画出来,把当前显示的画出来即可,然后当StringGrid滚动的时候继续画
2000条都读取出来有意义吗?还是做成翻页的好。
在修改表的时候在其它地方设置一个状态,所有的客户仅检查这个状态。
用StringGird? 为什么不用DBgird,这样效率更高呀! 不解! 还有为什么不做分页,就是说,设置一个时间范围,把记录分为加急,就绪,一般,三个等级来排序。 这样可以优先处理那些即将到时的数据。
感谢大家的回复!
说明,我做的一套影吧的收费管理系统。
客户端是机顶盒,所有的数据都是通过 Server.exe charge.dll 完成的,存储在
数据库中,我要的就是时实显示每个客户端的状态:
我也知道DBGrid速度比较快,但存在几个问题:
1、刷新的时候DBGrid总是很闪;
2、必须绑定数据源;
3、界面操作的灵活性也没有StringGrid好;
那我建议你用过Socket来做吧!
内部用一个线程来检查是否有更新,如果数据有变化在刷新界面.这样界面刷新的频率就很小很多。也就不闪了。
接受 winxkm(蹩脚的程序员) 的意见