一、准备知识 Linux和Windows系统在内存管理机制方面有很大的不同。在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然。这是Linux内存管理的一个优秀特性,在这方面,区别于Windows的内存管理。主要特点是,无论物理内存有多大,Linux都 ...
分类:
系统相关 时间:
2016-07-08 13:27:21
阅读次数:
145
cocos2d-x源于cocos2d-iphone,为了与Objective-c一致,cocos2d-x也采用了引用计数与自动回收的内存管理机制。 要现实自动内存回收,需继承于cocos2d-x的根类CCObject。当然自动释放会影响性能的。 cocos2d-x中有很多静态工场方法,例如以crea ...
分类:
其他好文 时间:
2016-07-07 09:50:22
阅读次数:
142
有关于linux下堆利用的文章有很多,之前我也曾总结过,但是并没有深入的追究。这次从源头入手来分析为什么会被利用,怎么被利用。所谓的源头就是堆管理机制,更详细的说就是libc.so中的mallc()与free()函数了。 首先说下堆机制,说白了堆只是一种用户态的内存管理机制而已。设立堆管理机制是为了 ...
分类:
其他好文 时间:
2016-07-06 20:07:14
阅读次数:
588
几个重要概念 Slab memcached通过slab机制进行内存的分配和回收,slab是一个内存块,它是memcached一次申请内存的最小单位,。在启动memcached的时候一般会使用参数-m指定其可用内存,但是并不是在启动的那一刻所有的内存就全部分配出去了,只有在需要的时候才会去申请,而且每... ...
分类:
系统相关 时间:
2016-06-28 23:44:17
阅读次数:
371
析构函数在对象的生命结束时,会自动调用,大家所熟知的智能指针就是根据析构函数的这种特性而实现的,包括Qt的内存管理机制,也都是利用了析构函数的这一机制来实现的。c++创始人Bjarne Stroustrup在创造析构函数也是出于这种目的的,可见如果析构函数用的好的话,可以省去我们很多工作量,你不再需 ...
分类:
其他好文 时间:
2016-06-25 06:08:34
阅读次数:
178
引言 对于C++程序员,内存分配与回收的处理一直是令人头疼的问题。Java由于自身的自动内存管理机制,使得管理内存变得非常轻松,不容易出现内存泄漏,溢出的问题。 不容易不代表不会出现问题,一旦内存泄漏或溢出的情况发生,调试起来会变得非常困难。这就要求我们对虚拟机的内存区域有深入的理解。最终能够判断内 ...
分类:
其他好文 时间:
2016-06-22 22:06:12
阅读次数:
238
作为一名iOS开发攻城狮,在苹果没有出ARC(自动内存管理机制)时,我们几乎有一半的开发时间都耗费在这么管理内存上.后来苹果很人性的出了ARC,虽然在很大程度上,帮助我们开发者节省了精力和时间.但是我们在开发过程中,由于种种原因,还是会出现内存泄露的问题.内存泄露是一个很严重的问题.下面就简单介绍下 ...
分类:
其他好文 时间:
2016-06-16 01:34:16
阅读次数:
188
刚开始学习C#的时候,就听说CLR对于String类有一种特别的内存管理机制:有时候,明明声明了两个String类的对象,但是他们偏偏却指向同一个实例。如下: String s1 = "Hello";String s2 = "Hello"; //s2和s1的实际值都是“Hello”bool same ...
Memcache使用了Slab Allocator的内存分配机制:按照预先规定的大小,将分配的内存分割成特定长度的块,以完全解决内存碎片问题Memcache的存储涉及到slab,page,chunk三个概念1.Chunk为固定大小的内存空间,默认为96Byte。2.page对应实际的物理空间,1个p ...
分类:
系统相关 时间:
2016-06-14 22:14:38
阅读次数:
209
经常遇到一些刚接触Linux的新手会问内存占用怎么那么多?在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然。这是Linux内存管理的一个优秀特性,在这方 面,区别于Windows的内存管理。主要特点是,无论物理内存有多大,Linux 都将其充份利用, ...
分类:
系统相关 时间:
2016-06-07 12:38:20
阅读次数:
158