//启动定时器
System.Timers.Timer aTimer = new System.Timers.Timer();
aTimer.Elapsed += new ElapsedEventHandler(thread);
aTimer.Interval = 10000;
aTimer.AutoReset = true;//设置是执行一次(false)还是一直执行(true);
aTimer.Enabled = true;private void thread(object source, System.Timers.ElapsedEventArgs e)
        {
            thread1 = new Thread(online);
            thread1.Start();
        }
        public void online()
        {
            //MessageBox.Show("线程启动了");             //用子线程干一些事情
            thread1.Abort();
        }如上面代码,会不会多此一举呢?直接用Timer做事也可以吧?
用Timer直接执行要做的事,和启用新线程做事情,那个要好些?

解决方案 »

  1.   

    System.Timers.Timer也是多线程
    你可以在Elapsed里开100个线程
    当然
    也可以当然100个System.Timers.Timer
      

  2.   

    也就是说用timer启动线程是多此一举了对吧,直接用它做事情就行了?
      

  3.   


    郁闷,才发现用timer或者Thread修改form时都会抛出异常
      

  4.   

    线程中修改UI控件,需要调用Control.Invoke或者Control.BegainInvoke