应用程序配置文件及数据保存
2016-07-21 11:07
197 查看
作为一个应用程序,配置文件或许是最好的数据保存方式。
共享内存的方式也可以较好保存数据(能做到就算应用程序退出,此块内存的数据任然保持原样,以便程序再次启动,可以恢复到退出时的状态),但是有一个缺陷就是机器不能断电,断电数据就全部丢失。
使用配置文件能较好避免此问题,但也不能完全做到现场保护,甚至还可能损坏配置文件。因此关键数据需要另外有一个default的配置文件,防止此种情况的发生,以便程序任然可以正常运行起来。
通过将数据发送到服务器端,进行保存也是一种很好方式,这就需要制定相关协议,只要服务端不崩溃,应用程序基本能获取到退出前的状态,当然这就涉及到前篇文章将到的服务端与客户端的握手逻辑了。
三者的结合使用,如果方便程序的移植,不想与服务端产生依赖交互, 单单是一个应用程序的话,结合使用配置文件和共享内存会很好。
步骤:
1.配置好default配置文件
2.程序启动前判断是否存在上次保存的配置文件,有的话直接使用保存的配置文件初始化程序,
3.如果没有保存的配置文件,应用程序就去读取default配置文件进行初始化工作,程序启动
4.程序启动,用户做的一些操作,通过共享内存进行保存,直接映射内存,比读写配置文件高效安全,特别是进程间通讯的时候.
说到这里,补充一下需要向其他进程交互时,别忘了向指定窗口发送个消息,通知有数据改变了. 类似观察者模式,实现数据的监听
4..只要程序不退出,用户始终从共享内存获取配置信息, 动态刷新界面数据
5. 在程序退出前,将配置信息保存到配置文件中
6. 下次启动直接用此配置文件进行初始化, 回到步骤1
共享内存的方式也可以较好保存数据(能做到就算应用程序退出,此块内存的数据任然保持原样,以便程序再次启动,可以恢复到退出时的状态),但是有一个缺陷就是机器不能断电,断电数据就全部丢失。
使用配置文件能较好避免此问题,但也不能完全做到现场保护,甚至还可能损坏配置文件。因此关键数据需要另外有一个default的配置文件,防止此种情况的发生,以便程序任然可以正常运行起来。
通过将数据发送到服务器端,进行保存也是一种很好方式,这就需要制定相关协议,只要服务端不崩溃,应用程序基本能获取到退出前的状态,当然这就涉及到前篇文章将到的服务端与客户端的握手逻辑了。
三者的结合使用,如果方便程序的移植,不想与服务端产生依赖交互, 单单是一个应用程序的话,结合使用配置文件和共享内存会很好。
步骤:
1.配置好default配置文件
2.程序启动前判断是否存在上次保存的配置文件,有的话直接使用保存的配置文件初始化程序,
3.如果没有保存的配置文件,应用程序就去读取default配置文件进行初始化工作,程序启动
4.程序启动,用户做的一些操作,通过共享内存进行保存,直接映射内存,比读写配置文件高效安全,特别是进程间通讯的时候.
说到这里,补充一下需要向其他进程交互时,别忘了向指定窗口发送个消息,通知有数据改变了. 类似观察者模式,实现数据的监听
4..只要程序不退出,用户始终从共享内存获取配置信息, 动态刷新界面数据
5. 在程序退出前,将配置信息保存到配置文件中
6. 下次启动直接用此配置文件进行初始化, 回到步骤1
相关文章推荐
- 我是运营,我没有假期
- IE7降低内存和降低CPU的几个技巧
- DB2数据库的安装
- C#实现把指定数据写入串口
- “传奇”图象数据存储方式
- 修复mysql数据库
- 如何高效的使用内存
- DOS下内存的配置
- XP/win2003下发现1G的内存比512M还慢的解决方法
- 浅析SQL数据操作语句
- SQLServer 数据导入导出的几种方法小结
- 简述MySQL分片中快速数据迁移
- MySQL数据备份之mysqldump的使用详解
- PowerShell实现动态获取当前脚本运行时消耗的内存
- C#实现窗体间传递数据实例
- C#实现把dgv里的数据完整的复制到一张内存表的方法
- C#中的委托数据类型简介
- SQL Server删除表及删除表中数据的方法
- SQL语句实现查询SQL Server内存使用状况
- SqlServer2008误操作数据(delete或者update)后恢复数据的方法