- 主题:std::map<> 和 QMap<> 在删除元素后都不会减少内存占用啊
把内存返回给内存分配器。让内存分配器去管理不是更好吗?
--
FROM 120.37.22.*
标记未使用了,操作系统没收回而已
--
FROM 115.205.70.*
就是返回给了内存分配器,不会减少内存占用是指?
allocator -> (tcmalloc/jemalloc/libc malloc/etc) -> kernel -> 物理内存
【 在 hgoldfish 的大作中提到: 】
: 把内存返回给内存分配器。让内存分配器去管理不是更好吗?
--
修改:overcomeunic FROM 106.11.31.*
FROM 106.11.31.*
【 在 hgoldfish 的大作中提到: 】
: 把内存返回给内存分配器。让内存分配器去管理不是更好吗?
运行时库的堆管理的内存, 本身也会有多重策略,
内存交回去也会涉及碎块合并, 甚至会有可能发生node节点一些移动,
如果, 刚刚合并为, 又要分配出来, 合并,分裂, 还是挺影响新能,
所以, 堆一般会使用哈希, 或者叫快表, 把一些常用大小的内存块放入快表里,
这样下次分配, 可以直接使用。
--
FROM 115.171.154.*