当前位置: 技术问答>linux和unix
map存储的大小和程序大小相差很大
来源: 互联网 发布时间:2016-10-15
本文导语: 变量 map x是一个结构体 struct x //构成定义 pm_mu { int32 id; string name; string desc; int32 a_id; string a_compose; }; 差不多是5w条记录,我把每条记录的大小相加,得到差不多是10m的内存大小 每条记录占用的内存我用了4+na...
变量
map
x是一个结构体
struct x //构成定义 pm_mu
{
int32 id;
string name;
string desc;
int32 a_id;
string a_compose;
};
差不多是5w条记录,我把每条记录的大小相加,得到差不多是10m的内存大小
每条记录占用的内存我用了4+name.size+desc.size+4+a_compose。size
代码只是想数据插入map
为什么插入前后程序的大小会相差30m。多出的内存在哪里被消耗了?
有什么办法能减少内存不?
map
x是一个结构体
struct x //构成定义 pm_mu
{
int32 id;
string name;
string desc;
int32 a_id;
string a_compose;
};
差不多是5w条记录,我把每条记录的大小相加,得到差不多是10m的内存大小
每条记录占用的内存我用了4+name.size+desc.size+4+a_compose。size
代码只是想数据插入map
为什么插入前后程序的大小会相差30m。多出的内存在哪里被消耗了?
有什么办法能减少内存不?
|
据说map是红黑树,本身要占用一些空间,不过应该也没有LZ说的那么多
http://topic.csdn.net/u/20100530/19/159d769f-110c-463d-b075-274191cbfbcd.html
c/c++ iis7站长之家
http://topic.csdn.net/u/20100530/19/159d769f-110c-463d-b075-274191cbfbcd.html
c/c++ iis7站长之家
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。