欢迎光临山东赛力特自动化设备有限公司网站!
诚信促进发展,实力铸就品牌
服务热线:

17279995247

产品展示 / products 您的位置:网站首页 > 产品展示 > 自动化设备 > 分配器 > Motrona GV470分配器
Motrona GV470分配器

Motrona GV470分配器

简要描述:虽然Motrona GV470分配器的定制有所限制,但在许多情况下,仍需要用到自定义的分配器,而这一般是为封装对不同类型内存空间(如共享内存与已回收内存)的访问方式,或在使用内存池进行内存分配时提高性能而为.

访问次数:1679

所属分类:分配器

更新时间:2021-07-07

厂商性质:经销商

详情介绍
品牌其他品牌应用领域医疗卫生,环保,农业,能源
   在C++编程中,Motrona GV470分配器是C++标准库的重要组成部分。C++的库中定义了多种被统称为“容器”的数据结构(如链表、集合等),这些容器的共同特征之一,就是其大小可以在程序的运行时改变;为了实现这一点,进行动态内存分配就显得尤为必要,在此分配器就用于处理容器对内存的分配与释放请求。换句话说,分配器用于封装STL容器在内存管理上的低层细节。默认情况下,C++标准库使用其自带的通用分配器,但根据具体需要,程序员也可自行定制分配器以替代之。

  分配器是由亚历山大·斯特潘诺夫作为C++标准模板库(Standard Template Library,简称STL)的一部分发明,其初衷是创造一种能“使库更加灵活,并能独立于底层数据模型的方法”,并允许程序员在库中利用自定义的指针和引用类型;但在将标准模板库纳入C++标准时,C++标准委员会意识到对数据模型的*抽象化处理会带来不可接受的性能损耗,为作折中,标准中对分配器的限制变得更加严格,而有鉴于此,与斯特潘诺夫原先的设想相比,现有标准所描述的分配器可定制程度已大大受限。
 

 

  虽然Motrona GV470分配器的定制有所限制,但在许多情况下,仍需要用到自定义的分配器,而这一般是为封装对不同类型内存空间(如共享内存与已回收内存)的访问方式,或在使用内存池进行内存分配时提高性能而为。除此以外,从内存占用和运行时间的角度看,在频繁进行少量内存分配的程序中,若引入为之专门定制的分配器,也会获益良多。
 
  定义Motrona GV470分配器的主要原因之一是提升性能。利用它可以提高程序的性能,又或提高内存使用效率,亦或两者兼而有之。默认分配器使用new操作符分配存储空间,而这常利用C语言堆分配函数(malloc())实现。由于堆分配函数常针对偶发的内存大量分配作优化,因此在为需要一次分配大量内存的容器(如向量、双端队列)分配内存时,默认分配器一般效率良好。但是,对于关联容器与双向链表这类需要频繁分配少量内存的容器来说,若采用默认分配器分配内存,则通常效率很低。除此之外,基于malloc()的默认分配器还存在许多问题,诸如较差的引用局部性,以及可能造成内存碎片化。


留言询价

留言框

  • 产品:

  • 您的单位:

  • 您的姓名:

  • 联系电话:

  • 常用邮箱:

  • 省份:

  • 详细地址:

  • 补充说明:

  • 验证码:

    请输入计算结果(填写阿拉伯数字),如:三加四=7