在x毫秒后打印一些东西到控制台

时间:2016-10-19 20:07:53

标签: c# timer

我正在试图弄清楚如何制作它,然后让我们说,1分钟所以60000毫秒,控制台会说你好。

到目前为止我所拥有的只是

System.Timers.Timer timer = new System.Timers.Timer(60000);
timer.Start();

但我不知道怎么做到这样,当计时器完成后,它会做点什么。

4 个答案:

答案 0 :(得分:3)

您可以使用elapse事件,当60000 ms通过时将抛出该事件。 elapse事件的示例:

class Program
{
    static void Main(string[] args)
    {
        System.Timers.Timer timer = new System.Timers.Timer(60000);
        timer.Elapsed += new System.Timers.ElapsedEventHandler(elapse); // subscribing to the elapse event
        timer.Start(); // start Timer
        Console.ReadLine(); // hold compiler until key pressed

    }

    private static void elapse(object sender, ElapsedEventArgs e)
    {
        Console.WriteLine("Hy");
    }
}

答案 1 :(得分:0)

void Main()
{
var t = new System.Threading.Timer((s)=>Console.WriteLine("Hi"),null,0,60000);
Console.ReadLine();
}

答案 2 :(得分:0)

如果您只想进行一次写入(定时器每x秒运行一次),您可以使用System.Threading.Thread.Sleep

System.Threading.Thread.Sleep(60000);
Console.WriteLine("something");

答案 3 :(得分:0)

您要做的是创建一个事件,当计时器超过预定义的时间后写入控制台。

执行如下操作:

首先创建计时器并将其设置为60秒:

 var result = "<button ng-click='foo(\"" + str + "\")'>click me</button>".

接下来创建一个将在时间结束后触发的事件:

var timer = new System.Timers.Timer(60000); //60seconds

接下来,将计时器绑定到该事件:

private static void MyEvent(object sender, ElapsedEventArgs e)
{
    Console.WriteLine("Hello World");
}

这样做是告诉计算机当计时器实际上在未来开始运行然后计时器过去(计时器启动后经过60秒),然后将调用名为“MyEvent”的事件写入控制台。

最后启动计时器:

timer.Elapsed += MyEvent;

等待偶数触发并写入控制台。