我在 Windows 服务中使用 Systems.Timers.Timer 实例。我的问题是,无论其 Timer_Elapsed 方法中的内容是什么,该代码是在运行 Windows 服务的同一线程中执行,还是 Timer 在单独的线程上内部执行 elapsed 方法?
最佳答案
最近 blog post Abhishek Sur 的作者可以回答您的问题。
总而言之,System.Timers.Timer
:
- 调用ThreadPool中的可用线程来运行接口(interface)。
- ThreadSafe,每个事件处理程序都有显式锁。
- 可以使用 ISynchronizeObject 在任何线程中运行。
关于c# - System.Timers.Timer是否使用单独的线程来执行计时器经过的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5237594/