![]() |
1
2
DispatcherTimer在启用时保持其活动状态,即使您没有保留对它的引用。更重要的是,除非明确要求计时器停止(),否则没有人希望计时器停止引发事件。它通过将对自身的引用添加到私有列表<>由调度员保管。并在Stop()中删除该引用。 这反过来确保DataProcessor在具有非静态Tick事件处理程序的情况下不会被垃圾收集。将保留的引用设置为null无效,Dispatcher和事件代理保留的引用会使对象保持活动状态。 您需要向DataProcessor添加一个停止计时器的方法。 |
![]() |
2
1
你的
然后,当您想终止您的
使用它:
|
![]() |
3
0
我找不到
|
![]() |
4
0
galets和EkostikMartin已经回答了这个问题。让我解释一下
与
它为你提供了一种安全的方式来关闭或终止你打开或启动的东西。如果在using块内发生异常,或者如果using块由
更新
正如EkostikMartin在评论中所说,
|
![]() |
tgogos · Golang-按名称终止进程 8 年前 |
![]() |
Tastalian · Python多处理中挂起子进程的硬杀伤 9 年前 |
![]() |
Marcel · 家长的PID在循环中不起作用,导致Bash停止睡眠 9 年前 |
![]() |
runner · 在linux中关闭电源时停止应用程序的Shell脚本 9 年前 |
![]() |
Tomas · “For”循环并在Bash脚本中休眠 11 年前 |