码迷,mamicode.com
首页 >  
搜索关键字:buddy allocator    ( 282个结果
STL 中 vector 的内存管理
1. vector 底层基本结构是数组,内存空间不够时会调用分配器(allocator)动态开辟双倍的内存空间。2. vector 中有 size 和 capacity 之分,size 相当于瓶子里有多少水,capacity则是瓶子的容积3. 当vector调用clear函数的时候,size变为0,...
分类:其他好文   时间:2015-05-27 20:36:23    阅读次数:156
error LNK2019: 无法解析的外部符号 "class std::vector<class std::basic_string<char,struct std::char_traits<cha
error LNK2019: 无法解析的外部符号 "class std::vector,class std::allocator >,class std::allocator,class std::allocator > > > __cdecl Public_Func::split(class std::basic_string,class std::allocator >,class std...
分类:其他好文   时间:2015-05-19 10:30:15    阅读次数:334
STL源代码剖析(一) - 内存分配
Allocaorallocator 指的是空间配置器,用于分配内存。STL中默认使用SGI STL alloc作为STL的内存分配器,尽管未能符合标准规格,但效率上更好。SGI STL也定义有一个符合标准,名为allocator的配置器,但SGI自己从未使用过它,主要原因是它仅仅把C++的new操作...
分类:其他好文   时间:2015-05-17 10:46:39    阅读次数:136
C++11 对 string的改变
元素保证是连续存储了 operator[]之类的不可以invalidate iterator了,于是COW不行了 不再是container所以swap不需要遵守不能copy/move/swap元素的规定,于是SSO可行了 reference不再是Allocator::reference了,而直接就是...
分类:编程语言   时间:2015-05-04 13:23:38    阅读次数:128
C++STL内存配置的设计思想与关键源码分析
说明:我认为要读懂STL中allocator部分的源码,并汲取它的思想,至少以下几点知识你要了解:operator new和operator delete、handler函数以及一点模板知识。否则,下面你很可能看不大明白,补充点知识再学习STL源码比较好。下面会结合关键源码分析C++STL(SGI版...
分类:编程语言   时间:2015-04-28 17:34:00    阅读次数:199
【源码剖析】MemoryPool —— 简单高效的内存池 allocator 实现
内存池简单说,是为了减少频繁使用 malloc/free new/delete 等系统调用而造成的性能损耗而设计的。当我们的程序需要频繁地申请和释放内存时,频繁地使用内存管理的系统调用可能会造成性能的瓶颈,嗯,是可能,毕竟操作系统的设计也不是盖的。内存池的思想是申请较大的一块内存(不够时继续申请),之后把内存管理放在应用层执行,减少系统调用的开销。...
分类:其他好文   时间:2015-04-24 19:15:37    阅读次数:341
Memcahce和Redis比较
一、Memcache1. memecache 把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小redis有部份存在硬盘上,这样能保证数据的持久性。2. Memcache使用了Slab Allocator的内存分配机制:按照预先规定的大小,将分配的内存分割成特定长度的块,以完全解决内存碎片问...
分类:其他好文   时间:2015-04-20 16:30:45    阅读次数:115
vector的用法总结
Reference Constructors vector Constructs a vector of a specific size or with elements of a specific value or with a specific allocator or as a copy of...
分类:其他好文   时间:2015-04-19 21:11:30    阅读次数:183
内存池--定长内存池
简介STL的 __pool_alloc, __mt_alloc,boost的pool系列, ace的ACE_Cached_Allocator均为定长内存池。说明内存池,根据存储的元素的长度是否可变,分为变长,与定长两种内存池。从逻辑上来讲,定长内存池只需存储相同大小的元素,因此无须花费额外的空间(数...
分类:其他好文   时间:2015-04-07 22:55:28    阅读次数:225
allocator类的使用 - 实现自己的vector
allocator类是一个模板,它提供类型化的内存分配以及对象构造与撤销。allocator类将内存分配与对象构造分开。当allocator对象分配内存时,它分配适当大小并排列成保存给定类型对象的空间。但是,它分配的内存时未构造的,allocator用户必须分别construct和destroy放置...
分类:其他好文   时间:2015-03-31 23:42:50    阅读次数:338
282条   上一页 1 ... 20 21 22 23 24 ... 29 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!