【发布时间】:2013-03-20 02:23:09
【问题描述】:
我正在尝试按照 c# 教程中的示例在经过一定时间后触发计时器类中的事件,但它似乎不起作用。
这是代码:
class Program
{
static void Main(string[] args)
{
System.Timers.Timer tmr = new System.Timers.Timer();
tmr.Elapsed += new ElapsedEventHandler(TimerTickHandler);
tmr.Interval = 1000;
tmr.Enabled = true;
Console.ReadKey();
}
public static void TimerTickHandler(object sender, ElapsedEventArgs e)
{
Console.Write("\rprinting: {0}", e.SignalTime.ToString());
}
}
我将 TimerTickHandler 附加到 elapsed 事件上,每秒后它应该将时间打印到屏幕上,但我没有得到任何输出。
关于我哪里出错的任何线索?
感谢您的帮助。
【问题讨论】:
-
.NET 4.5 更改的另一种情况是,ReadKey() 获取了一个锁,以防止其他线程写入控制台。您的处理程序 确实 执行,但它在输入模式下无法向控制台发送信息。使用调试器设置断点以查看此内容。
-
如果尚未报告,我想我应该将其报告为错误。