2009-06-29 162 views
1

我正在用.NET Compact Framework 3.5开发一个使用C#的移动应用程序。 它需要将状态存储在内存中,即如果应用程序崩溃,应用程序必须重新启动到崩溃前的状态。如何在应用程序中存储应用程序的移动状态?

所有业务逻辑也必须存储以及表单。 我想知道是否有简单的方法来管理这种功能,你有任何线索? 序列化是否正确?

谢谢。

+1

恢复*相同*状态时不会再次使应用程序崩溃吗?如果你的意思是“一个更早的清理状态”,你不应该看一个事务数据库吗? – reto 2009-06-29 08:28:25

回答

1

起初,您不应该将状态存储在RAM中,因为它在崩溃后会丢失。相反,您必须使用像存储崩溃那样的非易失性内存。写这种媒体很慢,所以你必须采取相应的行动。

我看到一些设备有一个恢复应用程序,可以配置为每一段时间将RAM的整个内容复制到闪存中。硬重置后,它可以将整个设备放到原来的位置(至少在最后一次RAM复制之前)。

也许这种事情对你来说太过分了。正如你所说的,它可以更简单地将所有对象序列化并定期将它们复制到闪存中。这将是你的责任,重复和不是。在以前的状态下初始化应用程序也是您的责任。