设置一个定时器,时间间隔为10秒,如果想在指定时间做动作,比如5点钟,会不会出现五点钟做完一次,再做一次,直到6点钟才结束?是不是要Sleep(60*60*1000)?
以下是代码:
CTime time;
int day=time.GetDayOfWeek();//得到当天是星期几
int hour=time.GetHour();    //得到当时是几点钟
if(vBaktime==1)             //vBaktime是要执行任务的时间
{
if(vSun&&day==1)
SyncCopyFiles(vResourcepath,vBakpath);

if(vMon&&day==2)
SyncCopyFiles(vResourcepath,vBakpath);
if(vTue)
SyncCopyFiles(vResourcepath,vBakpath);
if(vWed)
SyncCopyFiles(vResourcepath,vBakpath);
if(vThu)
SyncCopyFiles(vResourcepath,vBakpath);
if(vFri)
SyncCopyFiles(vResourcepath,vBakpath);
if(vSat)
SyncCopyFiles(vResourcepath,vBakpath);
}
else
{
if(hour==vBakhour)  //hour是几点执行任务
SyncCopyFiles(vResourcepath,vBakpath);
}
是不是要在每个函数后面都加上SLEEP()?以保证在同一天或同一小时内不会重复执行?
以上代码是ONTIMER里的响应事件动作