正在写这样一个程序,系统根据设定的扫描时间(分钟计,1分钟至1000分钟)定时去检测收文箱是否有新的文件,如果有就触发一个发送进程。
如果我用timer控件,每次最多1分钟触发一次,只能在time事件中用循环判断是否到达设定的扫描时间,如果设定的扫描时间很大,就会很耗系统资源,timer控件1分钟触发一次也很耗资源(还有时间偏差),而发送进程也很耗资源,导致整个程序速度下载,我想请教一下有什么好的方法判断是否达到预定的扫描时间,不耗系统资源,也没有大的偏差?
如果我用timer控件,每次最多1分钟触发一次,只能在time事件中用循环判断是否到达设定的扫描时间,如果设定的扫描时间很大,就会很耗系统资源,timer控件1分钟触发一次也很耗资源(还有时间偏差),而发送进程也很耗资源,导致整个程序速度下载,我想请教一下有什么好的方法判断是否达到预定的扫描时间,不耗系统资源,也没有大的偏差?
解决方案 »
- VB代码
- vb 使用socket向smtp服务器发送附件,通过base64编码后发送过去,但是没有看到附件,而是以文本的方式显示在邮件正文。各位大侠帮帮忙啊。。。
- vb mscomm控件output发送数据出错的问题!急急急!!!!
- 新手问一个combobox的小问题
- 急:高分,各位老大,怎么在ImgAdmin中删除图片呀.哪位老大回答正确所有分都给他
- 怎样获得数据库中所有的用户建立的表的名字?
- 高手进来改代码,急!急!急!
- 关于VB的打印问题
- 请教,如何将mshflexgrid表导到excel中,在excel中打印,请赋代码,谢谢
- 我最近想学VB,但听说VB.net与vb相差很大,是不是VB是将要淘汰的东西了呢?怎么办?
- 状态栏的问题
- 托盘程序退出后,不想让图标还在状态栏上,怎么办????在线等!!!
timer事件应该不会很耗时间呀。只是一个判断而已。时间也是不依据timer控件的interval来累计时间。
dim dtBeginTime as dateprivate sub form_load()
dtbegintime=now()
timer1.interval=60000
timer1.enabled=true
end subprivate sub timer1_timer()
if now()-dtbegintime>1000.0/1440 then '1000分钟间隔。
'do something
dtbegintime=now()
end if
end sub
我说一下我的思路吧
timer控件每一分钟检测,并不怎么耗资,像你说的,根据设置时间来检测,这样你加一个变量
在timer控件每跳一分钟,变量加1,直到你的变量等于你设置的时间时
就执行详情见QQ3337976