我最近遇到了关于程序使用的内存的问题。原因是方法中使用的字符串数组i的内存。更具体地说,该程序是从外部文件读取整数数组。这是我的代码
class Program
{
static void Main(string[] args)
{
int[] a = loadData();
for (int i = 0; i < a.Length; i++)
{
Console.WriteLine(a[i]);
}
Console.ReadKey();
}
private static int[] loadData()
{
string[] lines = System.IO.File.ReadAllLines(@"F:\data.txt");
int[] a = new int[lines.Length];
for (int i = 0; i < lines.Length; i++)
{
string[] temp = lines[i].Split(new char[]{','},StringSplitOptions.RemoveEmptyEntries);
a[i] = Convert.ToInt32(temp[0]);
}
return a;
}
}
文件data.txt大约是7.4 MB和574285行。但是当我运行时,任务管理器中显示的程序内存为:41.6 MB。似乎没有释放在loadData()(它是string []行)中读取的字符串数组的内存。我如何释放它,因为它以后从未使用过。