我有一个C ++应用程序,它以高数据速率处理网络数据包。 该应用程序具有维护应用程序状态的各种数据结构(STL映射/列表等)。这些数据结构经常更新。 此应用程序的输入容易出错,因此容易崩溃。
我想要做的是将应用程序状态(各种数据结构)保存到持久性媒体,以便在崩溃后重新获得它。 是否有任何框架/图书馆/实践可以帮助我实现同样的目标。
请求您不要指示此主题“删除崩溃漏洞”。
答案 0 :(得分:0)
你应该看看Kate Gregory的Restart and Recovery framework食谱。这是一个视频,解释了如何采用这种策略。另外,请查看Application Recovery and Restart以供参考。我已经使用并修改了这个配方,它完美无缺。
答案 1 :(得分:-1)
关于
此应用程序的输入容易出错,因此容易崩溃
不,输入不应该导致应用程序崩溃 * 。这不是输入容易出错的。这是应用程序。
如果你真的希望信息能够持久存在,那么你可以做的就是首先坚持它,之前每次崩溃。
崩溃预测器当然可以派上用场。
但是一般的概念只是,坚持你需要坚持的东西,在崩溃之前几乎不可能这样做。
在崩溃状态下,您不能依赖应用程序内的任何内容。
在该状态下保存信息至少需要在使用该存储信息时进行大量验证。
简而言之,
最好是修复错误,但
如果失败,作为临时措施,您可以在信息可用时保持信息(在崩溃之前),但随后
我的目的是从头开始重新实现整个shebang。
<小时/> * :当然,除非它被设计了。