堆大小(由 umdh 报告)和(私有)工作集(由任务管理器报告)之间的差异的原因是什么
What accounts for the difference between the size of the heap (as reported by umdh) and the (private) working set (as reported by task manager)?
C++在Windows 7上运行的本机代码。VS2008.
我的应用程序上的特定状态更改将工作集(私有工作集)从 16Mb(6.5Mb) 增加到 38Mb(22Mb)。由于这似乎过多,我使用 umdh 检查了堆更改。我发现之前和之后的堆之间的差异增加了~9Mb。
工作集中的额外内存由什么原因?
我怀疑它可能正在加载 dll 中,但我如何确认这一点并对其进行分解?
当应用程序请求内存时,窗口提供的内存远远超过它请求的内存,以便来自所有应用程序的后续请求不会导致过多的碎片。 例如,您一次要求 1 个字节,您的工作集不会一次增长 1 个字节,也不会在一次镜头时按页面增长 1 个字节,但一次可能按兆字节增长。 工作集是物理内存中的页。 此外,如果其他东西需要,窗户可以将多余的东西从您身上带走。
相关文章:
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- C++避免重复声明的语法是什么
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 实现无开销push_back的最佳方法是什么
- C++从另一个类访问公共静态向量的正确方法是什么
- "throw expression code" 1e7 >返回 d 是什么?投掷标准::overflow_error( "too big" ) : d;意味 着?
- C++中名称篡改的目的是什么
- 在 c++ 中拥有一组结构的正确方法是什么?
- 这个指针和内存代码打印是什么?我不知道是打印垃圾还是如何打印我需要的值
- 是什么阻止DOMTimerCoordinator::NextID进入无休止的循环
- 派生类销毁的最佳实践是什么
- 这个语法std::class<>{}(arg1, arg2) 在C++中是什么意思?
- 通过JNI传递数据数组的最快方法是什么
- "using namespace std;"在C++的作用是什么?
- 在两台机器之间进行时间戳的最佳c++chrono函数是什么
- 文件系统:复制功能的速度秘诀是什么
- 一个倒梯形,但如果输入高度对于宽度来说太大,那么它应该报告,不可能("不可能的形状"是什么)
- Sean Parent在他的GBC -实现完整类型谈话中提到的缺陷报告是什么?
- gcov报告的析构函数中的分支是什么?
- 堆大小(由 umdh 报告)和(私有)工作集(由任务管理器报告)之间的差异的原因是什么