我在 Global.asax  
 protected void Application_Start(object sender, EventArgs e)
{
            //定时
            System.Timers.Timer myTimer = new System.Timers.Timer(30000);
            myTimer.Enabled = true;
            myTimer.AutoReset = true;
            myTimer.Elapsed += new ElapsedEventHandler(myTimer_Elapsed);
}
void myTimer_Elapsed(object source, ElapsedEventArgs e)
{
            //执行操作
}在本地是可以自动启动Timer 并执行操作的 但是放服务器上面去 就一直没有执行、 不知道是什么原因 需要服务器什么服务吗

解决方案 »

  1.   

    void myTimer_Elapsed(object source, ElapsedEventArgs e)
    {
      //执行操作
    try
    {
    }
    catch()
    }
    看看是不是有异常
      

  2.   

    应当是异常。如ls
    myTimer.Start();
      

  3.   

    没异常啊。。 我把执行的 单独拿出来是可以的  手动触发或者是本地 Timer 执行都是没问题
        现在是在服务器上 都没个响应 好像根本就没启用一般
      

  4.   

    1.System.Windows.Forms.Timer 是单线程的,它只在UI线程中运行,定时精度约55ms,当前的事件没处理完成时,下一次事件不会触发;过久地处理会导致界面假死。
    2.System.Threading.Timer 是多线程的,触发的事件在ThreadPool里面的线程中运行,所以当前事件没处理完成时,也会另开一个新线程处理。
    -----------------------
    参考. 
      

  5.   

    http://topic.csdn.net/t/20040326/14/2889985.html
      

  6.   

    换了个方式解决这个问题、 
      没有用Timer 用的是winform 服务来  自动执行更新操作   结贴