我读过任务管理器 (windows 10) 显示分配的地址空间量,而不是实际使用的内存量。我不清楚它是如何引用 C/C++ 应用程序的内存使用情况的。当我调用 malloc/new 时,我将该内存视为已分配和正在使用,那么如何解释这种差异?
最佳答案
当您的应用程序分配内存时,操作系统可能不会立即分配它(至少 Linux 是这种情况,除非您更改默认分配策略)。
相反,当您的应用程序实际访问内存时,操作系统将支持分配。也就是说,当它为您分配的地址出现页面错误时。
这通常是一个明智的策略,因为许多程序分配了很多内存,但随后只访问其中的一小部分。
关于c++ - 任务管理器 - c/c++ 应用程序 - 分配的地址空间与已用内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59311675/