我正在使用.NET Compact Framework 3.5在C#中开发移动应用程序。 它需要将状态存储在内存中,即,如果应用程序崩溃,应用程序必须重新启动到崩溃之前的状态。
还必须存储所有业务逻辑以及表单。 我想知道是否有一种简单的方法来管理这样的功能,你有什么线索吗? 序列化是正确的做法吗?
感谢。
答案 0 :(得分:1)
首先,您不应将状态存储在RAM中,因为它在崩溃后会丢失。相反,您必须使用非易失性存储器,如存储崩溃。写入这种媒介很慢,所以你必须采取相应的行动。
我见过一些具有恢复应用程序的设备,可以将其配置为每隔一段时间将整个RAM内容复制到闪存中。在硬复位后,它可以将整个设备带到原来的位置(至少在最后一次RAM复制之前)。
也许这种事情对你来说太过分了。正如您所说,它可以更简单地序列化所有对象并定期将它们复制到闪存中。什么是重复的,什么不是重要的,这是你的责任。您还有责任在之前的状态下初始化应用程序。