- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
环境:
假设我有一个主应用程序:
我有两个计时器:
timer1
时刻,应用程序正在检索新请求并将它们存储在 Queue
中,timer2
节拍上,应用程序正在出列一个请求以在新的 Thread
中执行任务。当用户要求停止所有任务以释放资源时,我打算使用 Thread.Abort()
简单地终止运行当前任务的线程。 .
问题:
我希望能够在从线程类中终止线程时保存一些最后的配置。
问题:
有没有办法检测线程何时被终止,比如 Thread.OnAborting()
事件?
或者也许我可以 catch ThreadAbortException
在调用 Thread.Abort()
方法时引发? (如果是这样,我真的不知道该怎么做,你能提供一些代码示例吗?)
最佳答案
除了捕获 ThreadAbortException
外,不存在其他机制。当然,您真的不希望调用 Thread.Abort
,因为 ThreadAbortException
是异步注入(inject)的,而且这些注入(inject)点是不可预测的。例如,它可能处于写入过程中,这可能会使整个 AppDomain 处于损坏状态。添加了 .NET 2.0 constrained execution regions这使得处理线程中止变得更安全、更容易处理,但是编写一段代码来保证 AppDomain 不会被破坏仍然难以置信困难。我的建议是押注 Thread.Abort
想法。
相反,您要做的是向线程发送一个信号并允许它自行正常终止。这可以通过以下机制来完成。
Thread.Interrupt
可以看到我的回答here获取更多信息。
关于c# - 是否存在像 Thread.OnAborting() 这样的事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6763015/
据我们所知,我们有 onComplete和 onAbort可选回调作为 router.push 中的第二个和第三个参数方法。 router.push(location, onComplete?, on
当我们想在事务级别处理 IndexedDB 错误时,我们有两个选择:onabort 和 onerror 处理程序。 它们有什么区别? MDN 不是很有帮助; it only says : Consid
环境: 假设我有一个主应用程序: 听取任务请求, 一个接一个地执行那些任务(使用一些资源(在物理意义上)), 必须能够立即停止挂起的任务以释放资源。 我有两个计时器: 在 timer1 时刻,应用程序
我有一个问题,两周内都无法解决。我使用 jQuery ui Widgets 来渲染引导轮播。在那些轮播中,我呈现高质量的视频。如果页面上有很多视频元素,标题中的视频将停止加载并抛出 onAbort 事
我正在下载大量图像,有时图像会“转义”脚本而不触发任何这些事件(不幸的是我没有实际的示例图像): var img = new Image(); img.onerror = function() {al
我知道如果图像未成功加载,Image.onabort 或 Image.onerror 会触发。但是什么时候被解雇呢?在某些情况下他们可以同时开火吗? 最佳答案 中止通常来自用户操作。例如,如果图像 A
我正在尝试弄清楚如何让图像元素的 onabort 事件起作用。通过阅读文档,它意味着当加载页面因单击停止按钮或触发停止事件而停止时触发。 我可以让以下代码片段在 IE 中工作,但在任何其他浏览器中都不
我是一名优秀的程序员,十分优秀!