c++ - HeapAlloc 返回 0xC0000017 : Not Enough Quota

标签 c++ winapi heap-memory quota heapalloc

我分配了少量数据类型,总大小为 2mb。

我只使用一个堆,它运行良好,直到我达到一定数量的分配,我对此非常确定,因为我已经评论了一个分配,使其在下一个分配时崩溃。

配额 = 磁盘空间?该文档没有涵盖此特定函数的错误代码,我已经分析了该应用程序,并且为该进程分配了足够的可用内存。我还在堆指针上放置了一个数据断点,它没有中断。当我单步执行直到调用 HeapAlloc 之前,堆指针都很好。

好奇怪..

最佳答案

尝试分配大块内存(即 >2MB),直到出现错误为止,以确定问题是对象数量还是总堆。另外,你确定你分配的内存没有超过2MB吗?我在达到 2GB 限制时见过该错误,但在达到 2MB 时从未见过该错误,除非您的页面文件已满。

如果所有其他方法都失败,请重新启动或尝试在不同的计算机上。

关于c++ - HeapAlloc 返回 0xC0000017 : Not Enough Quota,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2114694/

相关文章:

c++ - 在 winapi 中复制 Visual Studio 2013 自定义 GUI

c# - 如何使用选定的特定文件打开资源管理器?

tomcat - Windows 更新后 JVM 内存初始化错误

java - 是否可以强制 JVM 在堆中以外的堆栈中创建对象?

通过运行时对象与任务管理器输出 Java 内存使用情况

winapi - procexp 如何关闭另一个进程持有的互斥锁?

c++ - xdotool 找不到 Qt 应用程序窗口,而 wmctrl 可以

c++ - 在运行时从列表中添加和删除

c++ - 使用 C/C++ 实现德摩根定律

c++ - 带参数的 HTTP GET 请求