日期:2014-05-20  浏览次数:20727 次

◆◇◆ 关于将大量数据保存(缓存)在内存中的问题! ◆◇◆
现在我有控制台应用程序   A,A   有配置文件   B,B   中以   XML   格式保存了三千多行数据。

现在我通过存储过程调用   A,有可能每秒钟几十次。A   执行某些操作后自动退出。

由于   B   文件比较大且很少改变。所以我想将当   A   第一次运行的时候读   B,并将数据保存在内存中,以后   A   再运行时先判断内存中保存的数据是否为空,如果为空则填充否则读取。

------解决方案--------------------
不懂你想要什么
弄个变量存上不就行了?
------解决方案--------------------
看来你是多次启动、关闭一个进程,实际上就是多个进程依次运行
无论如何
你都得把读出的配置放在一个公共的地方
要么就是数据库
要么就是文件
如果要在内存开辟一块区域,让不同的进程访问,似乎很难实现
但是如果你按我上面说的两种方式来存储读出 那还不如就让每个 A 进程读配置文件好了
------解决方案--------------------
不要让进程结束
如果A是有参数的,就想办法保存这些参数,然后A获取这些参数
我想至少比反复读取B好
------解决方案--------------------
静态字段就可以了
static string
------解决方案--------------------
个人认为不能实现...

像你这种情况我觉得最好把数据解析后存到数据库中,这样应用程序每次启动就直接读数据库就行了...

这样比你每次启动再读xml,再分析xml效率要高点吧...
------解决方案--------------------
楼主的意思应该是应用程序关闭了,然后等下次再启动程序时,直接用上一次的数据,而不是再读xml文件了...