大字节数组分配任务管理器

时间:2014-07-10 18:06:55

标签: c# memory

出于好奇,我制作了一个小型控制台应用程序,如下代码所示:

class Program
    {
        static void Main(string[] args)
        {
            byte[] b = new byte[Int32.MaxValue / 4]; // about 536870911
            Console.ReadLine();
        }
    }

当我运行它并进入Console.ReadLine()时,我检查任务管理器。它告诉我,我的应用程序只使用2508KB的内存。 怎么可能

1 个答案:

答案 0 :(得分:2)

以下是我的结果:

在调试模式下:

enter image description here

在发布模式下:

enter image description here

黄色是专用字节,红色是工作集。在发布模式下,由于没有使用您的变量,因此编译器会对其进行优化。