.NET 程序突然结束

发布于 2024-11-29 14:02:23 字数 219 浏览 1 评论 0原文

目前我正在编写一个应用程序来记录数据。数据将集群存储到文件中。

用户或显示数据的程序可以分析该数据。通过分析大量数据,程序突然结束,即没有异常,任何其他错误消息或任务管理器中的任何进程只是不再有程序。

通过使用 perfmon 分析程序,我发现此时有大量 I/O(460 个事件/秒和 15MB/秒),正如预期的那样。从文件的不同位置读取数据是否有限制? (我正在寻找职位并阅读完整的集群。)

Currently I'm programming an application to record data. The data will be stored clustered to a file.

This data can be analyzed by the user or the program displaying the data. By analyzing large amount of data the program ends suddenly, i.e. there is no exception, any other error message or any process at the task manager just no more program.

By analyzing the program with perfmon I found lots of i/o (460 events/s and 15MB/s) at this moment as expected. Is there any limit reading data from different places of a file? (I'm seeking positions and read complete clusters.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

哆兒滾 2024-12-06 14:02:23

确保使用 try..catch 包装代码。然后在 catch 中设置断点。 (@Paolo 提出了一个很好的观点,请确保 try..catch 位于正在执行工作的线程中。)

此外,您可以尝试将 Visual Studio 设置为中断所有异常。 “调试”/“异常”/选择相关的“抛出”复选框。

另外,请尝试检查事件查看器以获取一些提示。

最后,您还可以在某些地方执行 Debug.WriteLine 或 Trace.WriteLine(尤其是在没有 Visual Studio 的系统上运行时)并使用 Sysinternals DebugView

注意:在查找源代码之后/同时确保代码生产质量(即添加日志记录、防御性编程等)的问题。

Make sure you're wrapping your code with a try..catch. Then set a break point in the catch. (@Paolo makes a good point, be sure the try..catch is in the thread that is doing the work.)

Also, you could try setting visual studio to break on all exceptions. "Debug" / "Exceptions" / Select relevant "Thrown" check boxes.

Also, try checking the Event Viewer for some hints.

Finally, you can also do Debug.WriteLine or Trace.WriteLine in certain places (esp if running on a system w/o visual studio) and monitor output with Sysinternals DebugView

Note: Be sure to make code production qual (i.e., add logging, program defensively, etc) after/while finding the source of the issue.

许久 2024-12-06 14:02:23

使用 try..catch。

订阅AppDomain.CurrentDomain.UnhandledExceptions

使用NLog

观察进程的工作集。

Use try..catch.

Subscribe to AppDomain.CurrentDomain.UnhandledExceptions.

Use NLog.

Watch the process' working set.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文