准备实时应用以保存意外事件(如意外关机、崩溃等)的状态数据

本文关键字:崩溃 关机 数据 状态 意外 如意 应用 实时 保存 意外事件 | 更新日期: 2023-09-27 18:33:23

我有一个应用程序,可以在没有互联网连接的预配置计算机上为学生进行交互式考试。该应用程序在考试期间记录用户输入、系统指标等,并遵循增量方法来保存这些数据,以便突然崩溃或断电不会破坏整个考试的会话数据。

该应用程序每秒将数据序列化为带有时间戳的新文件,并在会话结束时将所有内容编译在一起,以将其标记为 ATOMIC 事务。这工作正常。

我想做的是使应用程序在响应意外情况方面更加强大,例如由UPS触发的关机启动,用户自己不小心踢掉电源按钮(它发生了(等。当然,我知道如果操作系统崩溃或电源线断裂,则无能为力。

我正在寻找的是:

  • 要订阅的事件的完整列表,例如关机启动、笔记本电脑的电池电量关键等。
  • 如何在 .NET 4(任何语言(下订阅这些事件。

准备实时应用以保存意外事件(如意外关机、崩溃等)的状态数据

关闭电源后,您不能什么都不做。 Application.UnhandledException and Close将捕获任何您有模糊机会处理的内容,其中包括来自即将耗尽的电池或UPS启动的关闭信号。