我试图理解字符串实习,为什么在我的例子中似乎不起作用.示例的要点是显示示例1使用较少(内存较少),因为它在内存中应该只有10个字符串.但是,在下面的代码中,两个示例都使用大致相同的内存量(虚拟大小和工作集).
请告知为什么示例1没有使用更少的内存?谢谢
例1:
IList<string> list = new List<string>(10000);
for (int i = 0; i < 10000; i++)
{
for (int k = 0; k < 10; k++)
{
list.Add(string.Intern(k.ToString()));
}
}
Console.WriteLine("intern Done");
Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)
例2:
IList<string> list = new List<string>(10000);
for (int i = 0; i < 10000; i++)
{
for (int k = 0; k < 10; k++)
{
list.Add(k.ToString());
}
}
Console.WriteLine("intern Done");
Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)