运行c#应用程序中的静态属性内存消耗

本文关键字:属性 内存 静态 应用程序 运行 | 更新日期: 2023-09-27 18:03:09

查询1:

我有一个web应用程序与100行左右的xml文件;当我的web应用程序运行时,我需要在该xml文件中写入值(两次)并多次从该应用程序读取值;一旦在xml文件中更新了所有值,我尝试以两种方式读取值,

  1. 我将反序列化xml文件并将所有值存储在一个静态对象中,并在我的web应用程序中使用它;

  2. 每次当我需要数据时,我将准确解析到相应的xml元素并获得值;

我的疑问:

  • 如果我使用第一种方法,在静态对象中保存值是一种可能导致内存消耗的错误方法吗?

  • 如果我遵循第二种方法,我经常解析xml文件;这是正确的吗?

请告诉我哪种方法是正确的,

运行c#应用程序中的静态属性内存消耗

查询1:您应该使用您提到的第一个选项,因为每次访问xml文件并获取特定数据的成本非常高。

但是不需要放在静态对象中,可以将其反序列化为通过函数传递的某个局部变量或使用全局变量(尽量避免使用全局变量)