日期:2014-05-20  浏览次数:20839 次

windows服务,如何单线程运行?
我在windows服务中调用System.Timers.Timer每隔一段时间执行一段代码。现在的问题是在执行这段代码的时候windows服务还是会触发Timer的Elapsed事件,如何让在执行Elapsed事件里的代码的时候不让外面的线程再运行?

------解决方案--------------------
不行,这样只是在线程结束时完成此次的Elapsed事件,并不能使Elapsed事件不再次被触发,Elapsed事件是到时间就触发,并不是等到上一次的事件完成后再触发,每次被触发都是在一个新的线程中执行,与上一次的触发之间没有任何关系。
------解决方案--------------------
你是想等启动的线程结束后,再启动另外一个线程对吗?

即线程是依次进行的,对吗?