如何判断提交内存和保留内存中的内容?

发布于 2024-11-06 12:24:21 字数 194 浏览 0 评论 0原文

我目前正在研究一个问题,即应用程序正在为 C++ 应用程序使用大量私有内存。根据转储分析,看起来很多内存都在已提交和保留内存中。

我使用Windbg。有什么方法可以让我看到提交内存和保留内存中到底有什么内容?我已将其范围缩小到一个特定的堆。

我的理论是它没有被释放。我无法进行实时调试,我只能进行转储。

任何建议都会有所帮助。

I am currently looking into an issue where an application is using alot of private memory for a C++ app. It looks like alot is in committed and reserve memory based on the dump analysis.

I use Windbg. Is there any way I can see what excactly is in commited and reserve memory? I have narrowed it down to one specific heap.

My theory is that it's not being released. I cannot live debug, I only have dumps to go on.

Any suggestions would help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

扛起拖把扫天下 2024-11-13 12:24:22

!address -Filter 应该能够提供该信息。以下是不同的过滤器选项。

MEM_COMMIT:- 所有内存
目前承诺由
目标。物理存储已
为该内存分配的物理内存
内存或页面文件中。

MEM_RESERVE:- 所有内存
保留供目标将来使用。
没有分配物理存储
这段记忆。

MEM_FREE:- 所有可用内存
目标的虚拟地址空间。
该内存包括所有内存
尚未提交或保留。
该过滤器值与
RegionUsageFree。

!address -Filter should be able to give that information. Here are the different filter options.

MEM_COMMIT :- All memory that is
currently committed for use by the
target. Physical storage has been
allocated for this memory, in physical
memory or in the page file.

MEM_RESERVE :- All memory that is
reserved for future use by the target.
No physical storage is allocated for
this memory.

MEM_FREE :- All available memory in
the target's virtual address space.
This memory includes all memory that
has not been committed or reserved.
This Filter value is the same as
RegionUsageFree.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文