◆◇◆ 关于将大量数据保存(缓存)在内存中的问题! ◆◇◆
现在我有控制台应用程序 A,A 有配置文件 B,B 中以 XML 格式保存了三千多行数据。
现在我通过存储过程调用 A,有可能每秒钟几十次。A 执行某些操作后自动退出。
由于 B 文件比较大且很少改变。所以我想将当 A 第一次运行的时候读 B,并将数据保存在内存中,以后 A 再运行时先判断内存中保存的数据是否为空,如果为空则填充否则读取。
------解决方案--------------------不懂你想要什么
弄个变量存上不就行了?
------解决方案--------------------看来你是多次启动、关闭一个进程,实际上就是多个进程依次运行
无论如何
你都得把读出的配置放在一个公共的地方
要么就是数据库
要么就是文件
如果要在内存开辟一块区域,让不同的进程访问,似乎很难实现
但是如果你按我上面说的两种方式来存储读出 那还不如就让每个 A 进程读配置文件好了
------解决方案--------------------不要让进程结束
如果A是有参数的,就想办法保存这些参数,然后A获取这些参数
我想至少比反复读取B好
------解决方案--------------------静态字段就可以了
static string
------解决方案--------------------个人认为不能实现...
像你这种情况我觉得最好把数据解析后存到数据库中,这样应用程序每次启动就直接读数据库就行了...
这样比你每次启动再读xml,再分析xml效率要高点吧...
------解决方案--------------------楼主的意思应该是应用程序关闭了,然后等下次再启动程序时,直接用上一次的数据,而不是再读xml文件了...