| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4175 人关注过本帖
标题:vfp中如何实时显示某段循环的累计时间
只看楼主 加入收藏
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
我写的那个中考录取程序,一万五千个考生,从录取到统计,全部累加起来时间也不超过5秒。你这只是算平均分之类而已,却要30个按钮,40秒时间,震惊!

授人以渔,不授人以鱼。
2013-03-23 12:11
bccn201203
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:680
专家分:1140
注 册:2012-3-14
收藏
得分:0 
耗时过长的原因,是因为每段小程序执行结束后,计算时间所造成的,如果只计算一次运行时间,可以大大缩短运行的时间。
图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册
2013-03-23 14:30
bccn201203
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:680
专家分:1140
注 册:2012-3-14
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册
2013-03-23 14:33
bccn201203
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:680
专家分:1140
注 册:2012-3-14
收藏
得分:0 
因此,即时显示运行时间,会减缓程序的运行速度,这种方法是不可取的。

[ 本帖最后由 bccn201203 于 2013-3-23 14:47 编辑 ]
2013-03-23 14:34
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
以下是引用TonyDeng在2013-3-23 12:11:47的发言:

我写的那个中考录取程序,一万五千个考生,从录取到统计,全部累加起来时间也不超过5秒。你这只是算平均分之类而已,却要30个按钮,40秒时间,震惊!
真能吹
2013-03-23 14:48
bccn201203
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:680
专家分:1140
注 册:2012-3-14
收藏
得分:0 
以下是引用djszyyc在2013-3-21 16:59:05的发言:

有一段耗时较长的循环语句,VFP中能实现实时显示该段循环的累计时间吗?要以秒为单位进行累加,比如
for x=1 to 100000000
…&&此段程序很耗时
endfor
在表单上放一个标签,让它实时显示累计时间,不是在循环结束时统计它的总时间。
这在VB中很好实现,创建一个双线程程序即可,但VFP中不行,它不支持多线程,怎么办?
在VFP中也能够实现
2013-03-23 14:49
kiff
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:贵宾
威 望:46
帖 子:756
专家分:2531
注 册:2013-1-30
收藏
得分:0 
任何一条指令都是要耗时,况且是有关IO的就更加了。
凡事都是按实际出发的,100万次循环,因加多了一条指令,约多耗了60秒.按此计算,如是10万次循环,那就只多耗6秒。
我不知这一点点牺牲,值不值.
2013-03-23 15:25
月沐庭轩
Rank: 9Rank: 9Rank: 9
来 自:京城
等 级:贵宾
威 望:17
帖 子:393
专家分:1106
注 册:2011-7-24
收藏
得分:1 
不用timer,直接在循环体内,刷新标签控件上显示的时间,可以设置每循环10000次刷新一次,这个用循环次数除以10000是不是整除就可以实现。

坚持学习vfp,QQ:306805680
2013-03-23 16:18
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用tlliqi在2013-3-23 14:48:51的发言:

真能吹

嘿嘿

授人以渔,不授人以鱼。
2013-03-23 19:13
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
多线程编程,除了主线程可以使用IO,在别的线程上用IO是疯狂的举动,何况不是所有的过程都能用多线程来做,只有那些与时间序列无关的行为才可以用多线程。耗时多,往往是IO造成的,比如set talk没有off时,耗时可能是off的两倍以上。

授人以渔,不授人以鱼。
2013-03-23 19:31
快速回复:vfp中如何实时显示某段循环的累计时间
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015360 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved