C#中的System.Threading.Timer似乎不起作用。每三秒钟运行一次
我有一个计时器对象。我希望它每分钟运行一次。具体来说,它应运行一个OnCallBack方法,并在OnCallBack方法运行时变为非活动状态。一旦一个OnCallBack方法完成,它(一个OnCallBack)重新启动的定时器。 这是我现在拥有的: private static Timer timer; private static void Main() { timer = new Timer(_ => OnCallBack(), null, 0, 1000 * 10); //every 10 seconds Console.ReadLine(); } private static void OnCallBack() { timer.Change(Timeout.Infinite, Timeout.Infinite); //stops the timer Thread.Sleep(3000); //doing some long operation timer.Change(0, 1000 * 10); //restarts the timer } …