none
我想在程序中做一个延时,除了用timer,还可以怎么实现? RRS feed

答案

  • 你好 你也可以通过Thread.Sleep来实现演示

    i.e.

    Thread t=new Thread(Test);
    t.Start();


    private void Test()
    {
    Thread.Sleep(10000);此线程暂停10秒

    //....
    }

    Denn ich gehor nur dir!坚持不懈!http://hi.baidu.com/1987raymond
    2009年6月12日 5:13
    版主
  •  hi,你们说的没错。几个方法都可以;我算是补充一下~:
    1.timer可以使用来延时。
    2.thread.sleep(int time);现成进入休眠状态。
    3.你也可以自己写一段代码,比如for循环什么的,执行时间自己可以根据cpu频率等参数来设置。这个代码就是浪费时间的。在你需要的地方调用就可以。
      但是推荐的是线程休眠的方式,这个节省资源。不过都是管理进程延时的一种方式~
    Frank.Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    老徐的博客:http://www.cnblogs.com/frank_xl
    2009年6月13日 5:00
    版主

全部回复

  • 你好 你也可以通过Thread.Sleep来实现演示

    i.e.

    Thread t=new Thread(Test);
    t.Start();


    private void Test()
    {
    Thread.Sleep(10000);此线程暂停10秒

    //....
    }

    Denn ich gehor nur dir!坚持不懈!http://hi.baidu.com/1987raymond
    2009年6月12日 5:13
    版主
  • 这篇文章推荐您看一下:

    使用 System.Threading 命名空间中定义的 Timer 类


    ~~~~~ 如果我的回复对您有所帮助,请您点击一下此回复右上角的“投票认定帖子内容有帮助” ~~~~~
    ~~~~~ 向着三颗奖牌出发!^______^ ~~~~~
    2009年6月12日 5:13
  • 你好,控制线程可以达到这样的效果,Timer的原理也是通过控制线程来实现的。
    邹俊才
    2009年6月12日 6:41
    版主
  •  hi,你们说的没错。几个方法都可以;我算是补充一下~:
    1.timer可以使用来延时。
    2.thread.sleep(int time);现成进入休眠状态。
    3.你也可以自己写一段代码,比如for循环什么的,执行时间自己可以根据cpu频率等参数来设置。这个代码就是浪费时间的。在你需要的地方调用就可以。
      但是推荐的是线程休眠的方式,这个节省资源。不过都是管理进程延时的一种方式~
    Frank.Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
    老徐的博客:http://www.cnblogs.com/frank_xl
    2009年6月13日 5:00
    版主