C# 获取定时事件
在我的C#应用程序中,我需要调用基于计时器的方法。当我启动程序时,我希望计时器开始,然后每10秒调用一个方法 第二,如果我在10秒的时间跨度到期之前手动调用该方法,我希望计时器重置,并从执行开始等待10秒(不会在需要时触发)。换句话说,如果计时器在还剩6秒时,我手动触发-我希望计时器等待10秒-而不是在6秒时触发C# 获取定时事件,c#,timer,C#,Timer,在我的C#应用程序中,我需要调用基于计时器的方法。当我启动程序时,我希望计时器开始,然后每10秒调用一个方法 第二,如果我在10秒的时间跨度到期之前手动调用该方法,我希望计时器重置,并从执行开始等待10秒(不会在需要时触发)。换句话说,如果计时器在还剩6秒时,我手动触发-我希望计时器等待10秒-而不是在6秒时触发 创建这样的计时器的最佳方法是什么 一旦我有了计时器,我如何有效地控制它的手动过期 这门课适合你所有的需要 我希望计时器开始,然后每10秒调用一个方法 第一部分很简单,您需要将属性设置为
class Program
{
static void Main(string[] args)
{
var timer = new System.Timers.Timer();
timer.Interval = 2000; // 2 seconds here
timer.AutoReset = true; //Restart
Action<object, EventArgs> Elapsed = (object o, EventArgs e) => Console.WriteLine(DateTime.Now);
timer.Elapsed += new System.Timers.ElapsedEventHandler(Elapsed);
timer.Start();
while (Console.ReadLine() != "quit")
{
timer.Stop();
Elapsed.Invoke(new object(), EventArgs.Empty);
timer.Start();
}
}
}
类程序
{
静态void Main(字符串[]参数)
{
var timer=new System.Timers.timer();
timer.Interval=2000;//此处为2秒
timer.AutoReset=true;//重新启动
动作经过=(对象o,事件参数e)=>Console.WriteLine(DateTime.Now);
timer.appeated+=新系统.Timers.ElapsedEventHandler(已用);
timer.Start();
while(Console.ReadLine()!=“退出”)
{
timer.Stop();
调用(新对象(),EventArgs.Empty);
timer.Start();
}
}
}
您能发布一些代码或伪代码以便我们能提供帮助吗?系统。线程。计时器
是您的选择。请看一看以供参考,也请试着用完整的句子来写。这使问题更具可读性。另请参见@Spotifixus,我更喜欢它,因为它的属性(Interval、Autoreset、Enabled)和方法(Start、Stop)比线程化方法更合理