wjmz 2015-11-24 02:31 采纳率: 0%
浏览 1570

c# timer 的使用方法 求大神指点啊!!!

class TimerExampleState
{
    public int minute;
    public System.Threading.Timer tmr;
}
private static void Main()
{
    System.Threading.Timer timer_addtoken;
    TimerExampleState state_addtoken = new TimerExampleState();//支付token更新的定时器
    TimerCallback addToken = new TimerCallback(A.CheckStatusAddToken);//回调函数用于定时器调用
    timer_addtoken = new System.Threading.Timer(addToken, state_addtoken, 0, Timeout.Infinite);//定时器发生的时间,用于更新token
    state_addtoken.tmr = timer_addtoken;
  //  Console.WriteLine("1s");
  //  Console.WriteLine(id);
  //  Console.WriteLine(ra.Next(1, 20));
    Console.Read();

}
private void CheckStatusAddToken(Object state)
{
    TimerExampleState s =(TimerExampleState)state;
    Console.WriteLine(DateTime.Now);
    (s.tmr).Change(1, Timeout.Infinite);
    return;
}

    求大神指点看看这段代码有没有问题,还有他的执行过程是什么样的啊,为什么change的第一个参数才是重复时间,第二个参数貌似一点用都没有,为什么呢?
  • 写回答

1条回答 默认 最新

  • threenewbee 2015-11-24 03:23
    关注

    https://msdn.microsoft.com/zh-cn/library/system.threading.timer.change.aspx
    先搞清楚 Timeout.Infinite 是什么类型,用的什么重载。如果都是int,那么第二个参数是间隔时间,第一个是起始地延迟(都是毫秒为单位)

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器