一种使用文件来存储应用程序状态的方法技术

技术编号:4159879 阅读:243 留言:0更新日期:2012-04-11 18:40
一种使用文件来存储应用程序状态的方法,首先定义应用程序状态的存储方式及状态管理器存储与恢复应用程序的状态;应用程序的状态发生改变时向状态管理器发起存储状态的请求;状态管理器遍历存储应用程序状态的对象并将其顺次发送给对象序列化管理器;对象序列化管理器将对象序列化为字节流;状态管理器将字节流存储为本地文件;应用程序再次启动时向状态管理器发起恢复状态的请求;状态管理器加载指定的文件,读取其中的字节流并向对象反序列化管理器发出请求使其从字节流中恢复状态对象;最后状态管理器将所恢复的状态对象提交给应用程序从而恢复运行状态。本发明专利技术使得应用程序的状态序列化为文件,并可在再次运行时通过文件恢复应用程序状态。

A method of storing application state using files

A method of using the file to store the application state, first define the storage mode of the application state and state management storage and recovery application state; state to initiate storage manager application status change request; the object state manager traversal storage application state and the sequential transmission the object serialization manager; object serialization manager to serialize an object into a stream of bytes; state manager will be stored as a byte stream local file; restore state initiated request to the state manager application start again; the state manager loads the specified file, read one byte stream to the object deserialization manager a request to restore the state of the object from a byte stream; the last state state object manager will restore the submission to the application Order to restore the running state. The invention enables the state of an application to be serialized into a file, and the application state can be restored through a file at run time again.

【技术实现步骤摘要】

本专利技术涉及,特别涉及一种采用 应用程序的状态序列化为文件,并可在再次运行时通过文件恢复应用程序状态 的方法。
技术介绍
应用程序在长期运行时,有可能会遇到一些问题使之中断,例如断电或应用程序的严重BUG,本专利技术将使用文件来适时存储应用程序的状态,并在再次运行时从文件中恢复其先前的运行状态。
技术实现思路
本专利技术所要解决的技术问题是提供一种采用应用程序的状态序列化为文件, 并可在再次运行时通过文件恢复应用程序状态的方法。本专利技术所述的 ,该方法至少包括 如下的步骤步骤l:定义应用程序状态的的存储方式。步骤2:定义状态管理器存储与恢复应用程序的状态,该管理器需要这样来 实现。步骤3:应用程序的状态发生改变时,向状态管理器发同存储状态的请求。 步骤4:状态管理器遍历存储应用程序的状态的对象,将这些对象顺次发送 给对象序列化管理器。步骤5:对象序列化管理器将对象序列化为字节流。 步骤6:状态管理器将字节流存储为本地文件。步骤7:应用程序再次启动时,向状态管理器发起恢复应用程序状态的请求。 步骤8:状态管理器加载指定的文件,读取其中的字节流,并向对象反序列化管理器发出加栽应用程序状态的请求。步骤9:对象反序列化管理器从字节流中恢复状态对象。步骤10:状态管理器将所恢复的状态对象提交给应用程序,从而恢复应用程序的运行状态。本专利技术所述的 ,定义应用程序状 态的的存储方式,其步骤为步骤ll:使用对象来存储应用程序的状态。 步骤12:定义对象如何序列化为字节流。 步骤13:定义对象如何从字节流恢复为对象。步骤14:根据所实现的语言的不同,上述的实现会有差异,例如使用.NET, 可以用System. SerialableAttribute来标注对象,4吏用.NET所^是供的现成的方 法来实现序列化与反序列化;而0++则需要自定义上述的实现。本专利技术所述的 ,定义状态管理器 存储与恢复应用程序的状态,该管理器需要这样来实现,其步骤为步骤21:定义对象序列化管理器,该管理器将以队列的方式来序列化对象, 应用程序可以顺次将对象发送到该队列中,管理器则提取出队列中的对象,并 序列化为磁盘文件。步骤22:定义对象反序列化管理器,该管理器也以队列的方式,从指定的 文件中读取字节流,并根据所定义的方法反序列化为对象步骤21。本专利技术涉及的,使得应用程序的 状态序列化为文件,并可在再次运行时通过文件恢复应用程序状态。附图说明图1为本专利技术的流程图。 具体实施例方式参见图1,本专利技术的主要步骤如下 步骤l:定义应用程序状态的的存储方式。步骤2:定义状态管理器存储与恢复应用程序的状态,该管理器需要这样来 实现。步骤3:应用程序的状态发生改变时,向状态管理器发同存储状态的请求。 步骤4:状态管理器遍历存储应用程序的状态的对象,将这些对象顺次发送 给对象序列化管理器。步骤5:对象序列化管理器将对象序列化为字节流。 步骤6:状态管理器将字节流存储为本地文件。步骤7:应用程序再次启动时,向状态管理器发起恢复应用程序状态的请求。步骤8:状态管理器加载指定的文件,读取其中的字节流,并向对象反序列 化管理器发出加载应用程序状态的请求。步骤9:对象反序列化管理器从字节流中恢复状态对象。步骤10:状态管理器将所恢复的状态对象提交给应用程序,从而恢复应用 程序的运行状态。上述步骤1定义应用程序状态的的存储方式的具体步骤如下步骤ll:使用对象来存储应用程序的状态。步骤12:定义对象如何序列化为字节流。步骤13:定义对象如何从字节流恢复为对象。步骤14:根据所实现的语言的不同,上述的实现会有差异,例如使用.NET,可以用System. SerialableAttribute来标注对象,使用.NET所提供的 现成的方法来实现序列化与反序列化;而0++则需要自定义上述的实现。上述步骤2定义状态管理器存储与恢复应用程序的状态,该管理器需要这 样来实现的具体步骤如下步骤21:定义对象序列化管理器,该管理器将以队列的方式来序列化对象, 应用程序可以顺次将对象发送到该队列中,管理器则提取出队列中的对象,并 序列化为磁盘文件。步骤22:定义对象反序列化管理器,该管理器也以队列的方式,从指定的 文件中读取字节流,并根据所定义的方法反序列化为对象步骤21。上述的技术方案实施时使得应用程序的状态序列化为文件,并可在再次运 行时通过文件恢复应用程序状态。最后所应说明的是,以上实施例仅用以说明而并非限制本专利技术所描述的技 术方案;因此,尽管本说明书参照上述的实施例对本专利技术已进行了详细的说明, 但是,本领域的普通技术人员应当理解,仍然可以对本专利技术进行修改或者等同 地替换;而一切不脱离本专利技术的精神和范围的技术方案及其改进,其均应涵盖 在本专利技术的权利要求范围当中。本文档来自技高网...

【技术保护点】
一种使用文件来存储应用程序状态的方法,其特征在于:该方法至少包括如下的步骤: 步骤1:定义应用程序状态的的存储方式。 步骤2:定义状态管理器存储与恢复应用程序的状态,该管理器需要这样来实现。 步骤3:应用程序的状态发生改变 时,向状态管理器发同存储状态的请求。 步骤4:状态管理器遍历存储应用程序的状态的对象,将这些对象顺次发送给对象序列化管理器。 步骤5:对象序列化管理器将对象序列化为字节流。 步骤6:状态管理器将字节流存储为本地文件。   步骤7:应用程序再次启动时,向状态管理器发起恢复应用程序状态的请求。 步骤8:状态管理器加载指定的文件,读取其中的字节流,并向对象反序列化管理器发出加载应用程序状态的请求。 步骤9:对象反序列化管理器从字节流中恢复状态对象。   步骤10:状态管理器将所恢复的状态对象提交给应用程序,从而恢复应用程序的运行状态。

【技术特征摘要】
1、一种使用文件来存储应用程序状态的方法,其特征在于该方法至少包括如下的步骤步骤1定义应用程序状态的的存储方式。步骤2定义状态管理器存储与恢复应用程序的状态,该管理器需要这样来实现。步骤3应用程序的状态发生改变时,向状态管理器发同存储状态的请求。步骤4状态管理器遍历存储应用程序的状态的对象,将这些对象顺次发送给对象序列化管理器。步骤5对象序列化管理器将对象序列化为字节流。步骤6状态管理器将字节流存储为本地文件。步骤7应用程序再次启动时,向状态管理器发起恢复应用程序状态的请求。步骤8状态管理器加载指定的文件,读取其中的字节流,并向对象反序列化管理器发出加载应用程序状态的请求。步骤9对象反序列化管理器从字节流中恢复状态对象。步骤10状态管理器将所恢复的状态对象提交给应用程序,从而恢复应用程序的运行状态。2、 根据权利要求l所述的...

【专利技术属性】
技术研发人员:汤海京徐友春朱红军孙涛赵峰刘莹
申请(专利权)人:北京闻言科技有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1