你应该阅读Memory Mystery.我前一段时间遇到过类似的问题,在读完之后就不再问自己了.我读了其他消息来源,但我现在找不到,使用关键词"无理分配内存窗口操作系统".简而言之,操作系统提供的功能超出了您的应用程序所需的内容,具体取决于物理上可用的内存资源,例如,如果您在具有不同RAM的两台计算机上运行应用程序,则可以保证这两台计算机将具有不同的内存分配
毫无疑问,您知道,实际使用的内存和分配的内存之间存在巨大差异。应用程序分配的内存并不意味着它实际上在任何地方使用; 它真正的意思是操作系统已经“标记”了一个虚拟内存区域(确切地说是虚拟内存)可供应用程序使用。
内存不一定会被使用或导致其他进程挨饿 -如果应用程序开始填充它,则可能会出现这种情况。
这个分配的数量也可能会根据机器的整体内存生态系统进行扩展。如果应用程序启动时有足够的空间,那么它可能会比空间较少的情况获得更大的分配。
这一原则与创建一个具有合理初始容量的项目是良好实践的原则相同,List<T>这意味着在需要调整大小之前可以添加相当数量的项目。操作系统对内存使用采取相同的方法。