码迷,mamicode.com
首页 >  
搜索关键字:引用计数    ( 1520个结果
JVM垃圾回收(GC)整理总结学习
基本回收算法 1. 引用计数(Reference Counting)比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。2. 标记-清除(Mark-Sweep)此算法执行分两阶段。第一阶段...
分类:其他好文   时间:2014-09-09 10:36:38    阅读次数:205
JVM垃圾回收算法 总结及汇总
先看一眼JVM虚拟机运行时的内存模型: 1.方法区 Perm(永久代、非堆) 2.虚拟机栈 3.本地方法栈 (Native方法) 4.堆 5.程序计数器 1 首先的问题是:jvm如何知道那些对象需要回收 ? 目前两种标识算法、三种回收算法、两种清除算法、三种收集器 引用计数法 每个对象上都有一个引用计数,对象每被引用一次,引...
分类:其他好文   时间:2014-09-07 21:13:05    阅读次数:363
JAVA编程思想(4) - 多态(三)
若干个对象共享 例如Frog对象拥有其自己的对象,并且知道他们的存活多久,因为Frog对象知道何时调用dispose()去释放其对象。然而,如果这些成员对象中存在于其他一个或多个对象共享的情况,问题将不再简单,不再能简单的调用dispose()了。在这种情况下,我们也许需要引用计数来跟踪依旧访问着共享对象的数量。 //: polymorphism/ReferenceCounting.jav...
分类:编程语言   时间:2014-09-07 01:07:34    阅读次数:308
C++ 智能指针详解 二
智能指针(smart pointer)是存储指向动态分配(堆)对象指针的类,用于生存期控制,能够确保自动正确的销毁动态分配的对象,防止内存泄露。它的一种通用实现技术是使用引用计数(reference count)。智能指针类将一个计数器与类指向的对象相关联,引用计数跟踪该类有多少个对象共享同一指针。...
分类:编程语言   时间:2014-09-06 10:53:53    阅读次数:374
Swift内存管理-示例讲解
具体而言,Swift中的ARC内存管理是对引用类型的管理,即对类所创建的对象采用ARC管理。而对于值类型,如整型、浮点型、布尔型、字符串、元组、集合、枚举和结构体等,是由处理器自动管理的,程序员不需要管理它们的内存。一、引用计数每个Swift类创建的对象都有一个内部计数器,这个计数器跟踪对象的引用次数,称为引用计数(Reference Count,简称RC)。当对象被创建的时候,引用计数为1,每次...
分类:编程语言   时间:2014-09-04 20:56:40    阅读次数:324
Swift内存管理-示例讲解
具体而言,Swift中的ARC内存管理是对引用类型的管理,即对类所创建的对象采用ARC管理。而对于值类型,如整型、浮点型、布尔型、字符串、元组、集合、枚举和结构体等,是由处理器自动管理的,程序员不需要管理它们的内存。一、引用计数每个Swift类创建的对象都有一个内部计数器,这个计数器跟踪对象的引用次...
分类:编程语言   时间:2014-09-04 20:50:20    阅读次数:350
解析Obj-C中的assgin,copy,retain关键字的含义。
在objc中引入了引用计数的概念Refr...
分类:其他好文   时间:2014-09-03 18:14:03    阅读次数:190
c++智能指针
记得前不久有一次面试被问到智能指针的实现,当时对智能指针只是听说但没有了解过,就乱七八糟地说了一遍。今天写了一遍智能指针,用了引用计数的概念。         主要思想就是,用一个新类对原本需要的类型进行了一层封装,这个新类中保存了原本的对象指针和一个引用计数的指针,之所以全部用指针来保存,就是因为会出现多个新类的对象引用到同一个指针,这样的话当我们修改原本对象的内容以及引用计数时,就很天然性地...
分类:编程语言   时间:2014-09-03 09:44:36    阅读次数:221
JavaScript 的垃圾回收与内存泄露
JavaScript采用垃圾自动回收机制,运行时环境会自动清理不再使用的内存,因此javascript无需像C++等语言一样手动释放无用内存。在这之前先说一下垃圾回收的两种方式:引用计数与标记清除。引用计数方式会为每个已分配内存单元设置计数器,当计数器减少到0的时候就意味着该单元无法再被引用,将会被...
分类:编程语言   时间:2014-09-01 22:22:33    阅读次数:257
引用计数的智能指针的实现
引用计数的智能指针是对《Effective C++ 条款13:以对象管理资源》的一个实现。我们要设计一个智能指针,使他能够管理资源,在正确的实际调用资源的析构函数。首先我们需要一个指针reference来指向资源,当智能指针构造时,用reference指针指向资源,在我们确定资源应该被析构时,我们对...
分类:其他好文   时间:2014-09-01 20:57:53    阅读次数:319
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!