将 Enabled 设置为 true 与调用 Start 相同,而将 Enabled 设置为 false 则与调用 Stop 相同。
注意 |
|---|
| Elapsed 事件在 ThreadPool 线程上引发,因此,在将一个线程上的 Enabled 属性设置为 false 的同时,可在另一个线程上运行事件处理方法。这可能导致在将 Enabled 属性设置为 false 后引发 Elapsed 事件。Stop 方法的代码示例演示了一种防止此争用条件的方法。 |
如果将 Enabled 设置为 true 并将 AutoReset 设置为 false,则 Timer 在第一次达到间隔时仅引发一次 Elapsed 事件。
如果在 Timer 已启动后设置间隔,计数会重置。例如,如果将间隔设置为 5 秒,然后将 Enabled 属性设置为 true,则计数将在设置 Enabled 时开始。如果在计数为 3 秒时将间隔重置为 10 秒,则 Elapsed 事件在 Enabled 设置为 true 的 13 秒之后第一次引发。
注意 |
|---|
| 一些可视化设计器(如 Microsoft Visual Studio 中的那些)在插入新的 Timer 时,将 Enabled 属性设置为 true。 |