- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在调查奇怪的 WPF 多线程应用程序挂起,这种挂起在生产机器上比在开发机器上更容易随机发生。
我添加了 Application.Dispatcher.UnhandledException 和 CurrentDomain.UnhandledException 事件处理程序来记录每个异常,以防止应用程序崩溃,因为它是一个系统外壳。
我怀疑挂起的原因是我正在处理这些事件并且不允许应用程序崩溃,让我说这是当我使用 Windows 任务管理器监视应用程序挂起时的事件时我注意到 CPU 负载可能是由应用程序中的后台任务引起的,并且这些后台任务正在按预期写入日志。
记录器类使用 BeginInvoke 将日志异步写入磁盘。
最大的问题是每次应用程序在生产机器上挂起时,我在日志文件中什么也找不到。
现在我有两个问题:
2.无论如何我可以设法知道我的代码是否失败
注意:我在后台任务中使用了很多 Thread.Sleep,因为我自己管理线程,我认为我用这种方法出错了,我正在考虑重写我所有的后台任务从零开始。
任何帮助将不胜感激。
最佳答案
这个事件的顺序是:
如果您想从代码失败的异常中获取信息,请检查属性 StackTrace。您还可以附加到您的项目 pdb 文件,在这种情况下,您将获得带有行号的 StackTrace。
关于wpf - Application.Dispatcher.UnhandledException 和 CurrentDomain.UnhandledException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13545108/
我正在调查奇怪的 WPF 多线程应用程序挂起,这种挂起在生产机器上比在开发机器上更容易随机发生。 我添加了 Application.Dispatcher.UnhandledException 和 Cu
如题。 我一直在谷歌搜索并阅读 threads ... 我很确定没有其他地方可以使用 e.Handle 来阻止异常冒泡到 UnhandledException 处理程序。 我测试我的代码如下: 应用程
我有一个应用,尽管存在以下处理程序,但有时会意外终止 AppDomain.CurrentDomain.UnhandledException,Application.Current.Dispatcher
根据 Microsoft 文档,当线程(来自线程池或使用 System.Threading.Thread 类创建)发生未处理的异常时,应为应用程序的默认 AppDomain 触发 AppDomain.
我正在编写一个小库来捕获所有未处理的异常,显示一个小对话框(类似于 NF 的常用对话框),让用户有机会将异常发送给开发人员。为此,我像这样使用 AppDomain 的 UnhandledExcepti
我们有一个 .NET 3.5 程序集 (dll),由 VB6“代理”(exe) 通过 COM 接口(interface)执行。 VB6 代码调用: ' Ensure that no system di
我在全局范围内捕获异常并且它工作正常,除了应用程序在 UnhandledExceptions 上没有恢复的部分。 . 我在 MSDN 上读过,为了允许调度程序异常捕获未处理的非 UI 异常,我需要做以
我试图在我的应用程序中捕获所有未处理的异常,以便有条件地处理那些可以在不终止应用程序的情况下发生的异常,但我无法解决一个非常基本的问题:它不会停止异常。代码中某处抛出未处理的异常,它出现在这里,显示消
在我的应用程序中,每当出现任何未处理的异常时,我都想显示一个消息对话框。但是似乎在抛出未处理的异常时没有出现对话框消息,显示消息弹出窗口是否有效?同样在 MSDN 文档中,我没有找到太多相关信息。 下
我目前正在开发一个完全模块化的 .NET 应用程序,其中: 有加载模块 DDL 的主机应用程序。模块 DDL 具有可以多次打开的形式。 您可以卸载应用程序域。这将导致模块的所有打开形式被关闭。 我想做
在我的 App.xaml.cs 中,我创建了一个处理程序来响应 AppDomain.CurrentDomain.UnhandledException事件。 在处理程序中,我需要调用一个异步方法来发送有
我正在使用 AppDomain 提供的 UndhandledException,我所做的基本上是这样的: static void Main(string[] args) { AppDo
建议的重复是关于DispatcherUnhandledException,而不是AppDomain.CurrentDomain.UnhandledException。 原创: 应该在哪里订阅AppDo
我有一个非常简单的线程。 Thread 对象所做的唯一事情就是throw new Exception();。我这样做的原因是因为我需要测试如果异常发生在我的应用程序的单独线程中会发生什么。我已经用“真
在下面的代码片段中,为什么在单元测试中抛出异常时附加的处理程序(AppDomain.CurrentDomain.UnhandledException 事件)不会启动? 我在 VS2010 上使用 NU
情况 好吧,正如您在下面看到的,我有一个主应用程序,它创建了一个线程,它创建了一堆后台 worker 。当 RunWorkerCompleted 在某些 BG worker 上被触发时,我有时最终会丢
我有一个带有绑定(bind)到 Application.CurrentDomain.UnhandledException 的事件处理程序的 .NET 程序。 运行带有调试的程序时,当抛出未处理的异常时
由于未处理的 XAML 异常,有时会引发我的应用程序中的 UnhandledException 处理程序。 UnhandledExceptionEventArgs 包含消息 E_RUNTIME_SET
我正在尝试创建一个 AppDomain 并从 F# 附加到它的 UnhandledException 事件,但我运气不佳。在我的事件处理程序中,我需要对触发事件的域以及事件参数的引用。 要重现此问题,
当 AppDomain 有未处理的异常时,您可以处理 AppDomain.CurrentDomain.UnhandledException 事件。 但是,您无法阻止 AppDomain 关闭。你不能只
我是一名优秀的程序员,十分优秀!