我需要在时间到达某个时间点,比如12:00:00秒时执行一段代码,
用Sleep(1000)或WaitForSingleObject(x,1000)我担心会有问题,
有没有什么方法可以很准确的与系统时间保持一致,每隔一秒/分钟
时让我的线程醒来运行一次.

解决方案 »

  1.   

    CTime t = CTime::GetCurrentTime();
    可以得到系统时间
      

  2.   

    呵呵,用Timer控件呀!
    时间设为一秒,一秒执行一次,做个判断当系统时间等于12:00:00时,执行你想要的程序段!
      

  3.   

    同意 楼上. 好像 没有Timer这个控件吧..
      

  4.   

    楼上的兄弟们,你们说的这些和Sleep(1000)或WaitForSingleObject(x,1000)没太大区别,还是有可能会与系统时间有误差,比如,你是在12:00:00要执行一段代码,但是你Timer却是在
    11:00:00.05秒开始,如何?会有半秒的误差.
    办法我想到了,使用等待计时器内核对象,每12个小时执行一次就好了。
    不再讨论,结贴散分