(即大约75 of )时抛出异常),并且仍然有大量的RAM可用(至少根据任务管理器),就会失败。相同的程序运行在linux机器上(32位,4Gb内存;32位,2Gb内存),峰值内存使用量约为1.6Gb。有趣的是,在葡萄酒下运行在4Gb linux机器上的mingw生成的win32代码在bad_alloc上也会失败,尽管与在windows下运行时不同(稍后).堆碎片?堆腐败?(我运行了启用pageheap.exe但
Windows API有一组用于堆创建和处理的函数: HeapCreate、HeapAlloc、HeapDestroy等。我想知道在程序中使用另一个堆有什么用?从碎片的角度来看,您将获得外部碎片,其中内存不会在堆之间重用。因此,即使使用了低碎片堆,仍然存在碎片。附加堆的内存管理似乎是低级的。所以它们不容易使用。此外,还可以使用堆中的分配和管理分配的内存来模拟额外的堆。
那么它的用法是什么</