gpt4 book ai didi

c++ - Windows 应用程序占用过多内存。有什么建议吗?

转载 作者:太空宇宙 更新时间:2023-11-04 14:24:51 24 4
gpt4 key购买 nike

Windows XP 下使用 C++ 的 Visual Studio 2008 应用程序。

除了“始终删除新对象”建议之外还有什么有用的建议吗?

编辑:实际上我正在寻找一些编程建议。

最佳答案

取决于你所说的“消耗太多内存”是什么意思。

A) 设计使然,即它需要加载或生成您预计会导致问题的大型数据结构。

在这种情况下是 i) 太多的物理内存,即它变得很慢,因为硬盘驱动器开始交换页面进出或 ii) 太多的地址空间,即它无法分配,因为它无法在内存?

对于 ii) 考虑使用 64 位构建,考虑使用共享内存来存储大型数据结构,提防碎片 - 尽早分配大型缓冲区,将大型数据结构分解为较小的数据结构

B) 它使用大量内存让您感到惊讶。

查找漏洞或错误 - 各种可用的分析器或内置调试分配 Hook 的 visual studio。您是否有任何用于计算缓冲区大小(尤其是意外的 int 环绕)的错误算法?

使用智能指针管理删除。

关于c++ - Windows 应用程序占用过多内存。有什么建议吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4849578/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com