c - 最大分配大小

标签 c windows-7 size malloc

我在win7上工作,需要使用malloc分配2个缓冲区,每个缓冲区660M字节 第一次分配成功,第二次缓冲区分配失败。 我的磁盘上有 670G 可用内存 最大 malloc 大小是多少?上述问题的原因可能是什么

最佳答案

最大有效的 malloc() 大小适合进程堆的状态。堆可以是碎片的(例如,有一个堆有 600M 可用内存块,然后是 20M 已用内存块,然后又是 600MB 可用内存块 - 尽管有 1.2GB 可用内存,但你只是无法获得 650M)。

此外,据我所知,Windows加载DLL的机制将每个库绑定(bind)到某个地址,因此内存可能已经被DLL碎片化了。

关于c - 最大分配大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12818266/

相关文章:

iis - Visual Studio 2013 : Unable to access IIS metabase

android - 密度独立性测试

java - 修复 JList 的最大大小并更改空单元格的外观

c - 使用 makefile 链接时出错 : Ubuntu

c - 如果我添加了这样的搜索路径 $(SRCROOT)/Library,我该如何调用库文件夹中文件夹内的头文件?

c - OpenCV 使用带有灰度图像的 cvImageCreate() 失败,并且调整大小通常失败

css - Bootstrap 3 : form label position depending on master column

c - statBuffer 错误

macos - 从 Mac 访问 Parallels Windows 本地主机

windows-7 - Windows 7 : poor GUI response in my program while downloading data; is there some way to improve this?