想在一个函数里边延迟若干秒,应该怎么做。
就是说函数A中:
A{
...
a;
b    //延时处理
c;
...
}
执行过了a处,到b处,等待若干时间之后再执行c。
我试了试Sleep(6000)函数,结果执行了a就像死机一样。过了相当一段时间,又能执行c了。是不是用错了,还是有什么更好的办法?
也不知道我说清楚了没有。谢谢大家了~~

解决方案 »

  1.   

    就是sleep啊呵呵Sleep(6000)就是该线程延迟6秒以后再运行,既然楼主用在主线程里面,
    那就是和“死机”了差不多呵呵更好的办法就是把这些代码放到另外的“分支线程”去运行呵呵^_^
      

  2.   

    除了把sleep放到分支线程里就没有其他办法了吗?不知道计时器能不能用呢?
      

  3.   

    http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=195559
      

  4.   

    To  laiyiling(最熟悉的陌生人):
    谢谢你的文章,只不过,我在VC5.0下面使用这段代码的时候编译出错。查了MSDN,说要包含头文件ATLComTime.h,但是我包含了头文件,编译的时候出现:fatal error C1083: cannot open include file 'ATLComTime.h': No such file or directory
      

  5.   

    laiyiling(最熟悉的陌生人)的文章是.NET(C#?)里边实现的吧?用VC5的话
    #include <afxdisp.h>
    另外,一些大小写要改一下ColeDateTime改为COleDateTime……
      

  6.   

    噢,有ColeDateTime::GetCurrentTime这样的用法,不会是VB.NET吧?
    楼主自己改改就是了