CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

VC有没有等待函数

楼主godidea(国民先锋)2006-01-04 16:40:06 在 VC/MFC / 基础类 提问

让程序什么也不作,等待几秒钟再执行下面的程序 问题点数:20、回复次数:9Top

1 楼HelloIvan2005()回复于 2006-01-04 16:45:44 得分 0

sleep();Top

2 楼HelloIvan2005()回复于 2006-01-04 16:48:24 得分 0

void   Sleep(  
      DWORD   dwMilliseconds  
  );Top

3 楼pomelowu(羽战士)回复于 2006-01-04 16:53:39 得分 0

Sleep(3000);   //   sleep   for   3   secondsTop

4 楼Seu_why(Newbie)回复于 2006-01-04 16:57:58 得分 0

VOID   Sleep(  
      DWORD   dwMilliseconds       //   sleep   time   in   milliseconds  
  );  
  Top

5 楼rageliu(天气好了就去长白山看水怪去了,嘿嘿...)回复于 2006-01-04 20:29:35 得分 0

for()  
  while()  
  sleep()Top

6 楼xxfyath(〖水滴石穿〗)回复于 2006-01-07 10:24:34 得分 0

 
   
  Sleep(1000)   ;   ////等待1秒。  
   
  或  
  long   lStartTime   ;    
  lStartTime   =   GetTickCount()   ;    
  for(;;)  
      if(   GetTickCount()   -   lStartTime   >   1000   )   break;    
   
       
  Top

7 楼vcmute(BCare4 H1Rest Good9!)回复于 2006-01-07 10:47:31 得分 0

Using   Waitable   Timer   Objects  
  The   following   example   creates   a   timer   that   will   be   signaled   after   a   10   second   delay.   First,   the   code   uses   the   CreateWaitableTimer   function   to   create   a   waitable   timer   object.   Then   it   uses   the   SetWaitableTimer   function   to   set   the   timer.   The   code   uses   the   WaitForSingleObject   function   to   determine   when   the   timer   has   been   signaled.    
   
  #include   <windows.h>  
  #include   <stdio.h>  
   
  int   main()  
  {  
          HANDLE   hTimer   =   NULL;  
          LARGE_INTEGER   liDueTime;  
   
          liDueTime.QuadPart=-100000000;  
   
          //   Create   a   waitable   timer.  
          hTimer   =   CreateWaitableTimer(NULL,   TRUE,   "WaitableTimer");  
          if   (!hTimer)  
          {  
                  printf("CreateWaitableTimer   failed   (%d)\n",   GetLastError());  
                  return   1;  
          }  
   
          printf("Waiting   for   10   seconds...\n");  
   
          //   Set   a   timer   to   wait   for   10   seconds.  
          if   (!SetWaitableTimer(  
                  hTimer,   &liDueTime,   0,   NULL,   NULL,   0))  
          {  
                  printf("SetWaitableTimer   failed   (%d)\n",   GetLastError());  
                  return   2;  
          }  
   
          //   Wait   for   the   timer.  
   
          if   (WaitForSingleObject(hTimer,   INFINITE)   !=   WAIT_OBJECT_0)  
                  printf("WaitForSingleObject   failed   (%d)\n",   GetLastError());  
          else   printf("Timer   was   signaled.\n");  
   
          return   0;  
  }  
  Top

8 楼CUG122032(烫烫烫烫烫烫?烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫?烫烫烫烫烫烫烫烫烫烫烫烫烫烫烫)回复于 2006-01-07 11:18:52 得分 0

比较常用的有timer和Sleep,用Sleep的好处是比较方便,它适用于对时间精度要求不高,而且时间间隔比较小的地方。timer用起来没有Sleep方便,它需要先安装计时器,不过Timer比Sleep功能更多一点。  
   
  对于你的问题,你说想让程序“什么都不做”,那就用Sleep。。。我想你要清楚你说的话,什么都不做,也包括不响应各种消息,也就是说你的任何操作都是无效的。比如你当时点了关闭按键,也要等Sleep结束才能响应。。。  
   
  所以还是用Timer   比较好,我觉得。...我只在调试的时候用Sleep,比如说你要编个人工智能的类,一开始的时候只有接口,内部还没有写,这时就在内部让它Sleep几秒,模仿它将来要运算所花的时间。。。。Top

9 楼SoLike(思危)回复于 2006-01-07 11:31:02 得分 0

Sleep可以挂起当前线程Top

相关问题

  • VC 6.0中有没有计算bessel函数的系统函数
  • 求graphics.h的库函数,我的VC没有这个库函数
  • 有没有VC Base64编码的函数?
  • vc++库函数.
  • VC中四舍五入函数?在线等待
  • vc++函数问题!
  • 谁能告诉我.VC里有没有将字节数组(char[])转换成CString的函数,在线等待,急用!!
  • 有没有象iff(exp1,exp2,exp3)这样的函数啊?(在线等待)
  • 有没有将STRING转DATE的函数? 在线等待
  • VC++下怎样调用WORD下的OPEN()函数。。。。————在线等待,急死了。。。。

关键词

  • sleep
  • null
  • htimer
  • timer
  • liduetime
  • lstarttime
  • waitable
  • createwaitabletimer
  • setwaitabletimer
  • 等待

得分解答快速导航

  • 帖主:godidea

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo