Forms.Timer_tick不运行或间隔时间不符合设定的解决措施
来源:互联网 发布:js文件为什么不能编辑 编辑:程序博客网 时间:2024/06/14 06:16
不知道我的错误典不典型,笔者的程序设计为Timer设计为每0.1秒就对listview进行刷新显示,但是实际上效果并不理想。原有程序如下
后来查到资料,原来是因为我的showloop函数效率不高导致的,解决方案如下:
主要变化就是加红的两句。原因是如果不加这两句,程序会逐个向listView中添加,而从后台向界面添加数据是非常耗费时间的(笔者猜想的,以后还会说到这个问题)。而Timer_tick()的下一次事件只有等待上一次事件完成后才会进行重新计时并激发,这就造成更新越拖越慢。
而加上BeginUpdate()后,会将接下来的更新先存入缓存,等到EndUpdate()函数以后再一次性存入。别小看这两行代码,它们带来的改善是很明显的。StackOverFlow上面有人做过实验,不加时耗费时间大概为13,870 ms,加入后耗费时间仅为3,106 ms。当然还有其他更快的方式,不过这种最简单,改变幅度也最大。StackOverFlow上最快的大概为2,141 ms,但是这相较于之前的变化幅度,在很多不要求再快应用上可以忽略了。
下为原贴地址,有进一步需求的童鞋可以参考下。
http://stackoverflow.com/questions/9008310/how-to-speed-adding-items-to-a-listview
0 0
- Forms.Timer_tick不运行或间隔时间不符合设定的解决措施
- 解决不符合百度百科不收录的问题
- 解决Tomcat设定运行jvm的编码的问题
- iOS瀑布流(UIScrollView或UITableView)和解决运行不流畅的问题
- 怎样解决HTC手机设定闹钟不响的问题。
- android ADT中快捷键alt+/ 失效不好使的解决措施
- MFC中删除可执行文件(运行或不运行的)
- 实现Java程序间隔时间运行
- 实现Java程序间隔时间运行
- 线程实现间隔时间运行一次
- 解决不能用 ./运行的问题
- 解决AnimationDrawable动画不运行的问题
- 关于解决zencart乱码的措施
- node-sass 安装失败的解决措施
- node-sass 安装失败的解决措施
- ConcurrentModificationException的原因以及解决措施
- node-sass 安装失败的解决措施
- 间隔时间
- 缓存更新的套路
- 七牛-缩略图saveas(Java)
- 中国这10家慕课网站,您需要知道!
- 实现验证码功能遇到的两个问题
- java基础学习总结:char int 相互转换
- Forms.Timer_tick不运行或间隔时间不符合设定的解决措施
- github删除远程分支&重命名远程分支
- Lisp之根源
- JAVA 并发编程-基于线程池设计的ScheduledExecutor(八)
- srs代码学习(2)- 线程模型
- Android — 创建文件及文件夹
- 年纪一大把,胡子一大堆,还能学好编程吗?今天我问了我自己
- android on the beaglebone black
- 调试好用的AES加密算法 和 安卓AES加密对应算法