因为之前也仅仅是了解智能指针,要我说预计仅仅能说个它是干什么的。用不了几分钟。 昨天花了一天时间各种百度,算是对智能指针有了一点了解。这篇文章基本就是这次分享会的PPT的copy。没有底层的东西,多是概念。 我认为理解智能指针须要了解它发展的三个过程:起因,经过,结果。这篇文章主要讲述的是起因。经过 ...
分类:
其他好文 时间:
2017-04-22 14:37:48
阅读次数:
297
一,关联 objc_get 1)建立关联:objc_setAssociatedObject;该函数需要四个参数:源对象,关键字,关联的对象和一个关联策略;当源对象销毁,关联的对象也会被销毁 源对象: 即绑定者 关键字: 是一个void类型的指针。每一个关联的关键字必须是唯一的。通常都是会采用静态变量 ...
分类:
其他好文 时间:
2017-04-10 15:19:48
阅读次数:
241
上图就是JVM的分代模型,JVM根据Object的生命周期长短,将其分为上述的三个层次(也称代)。不同的层次,其GC(收集回收)算法不一样 Young Generation(年轻代、young代) Young Generation(年轻代、young代) 对象的初次创建就会在young代,大部分对象 ...
分类:
其他好文 时间:
2017-04-05 23:47:26
阅读次数:
211
(1).浅拷贝: ***s1、s2、s3共用一块存储空间 ***在浅拷贝中,由于拷贝构造函数和复制运算符重载时,只把已有对象的内容赋给新创建的对象,导致多个对象公用了同一段内存,结果当任意一个对象销毁时他就会释放那段他们公用的内存,当剩下的对象在被销毁时,就回重复的释放那段内存空间,导致程序崩溃 ( ...
分类:
其他好文 时间:
2017-03-25 00:07:17
阅读次数:
182
一、线程的生命周期 1、一个工程中的实际 (1)、c++对象有生命周期 (2)、线程也有生命周期 (3)、工程实践中的经验准则要想办法保证:线程对象(QThread对象)的生命周期 > 对应线程的生命周期 问题代码:在栈中定义局部线程对象 t.start()后继承向下执行,然后线程对象销毁,里面的成 ...
分类:
编程语言 时间:
2017-03-04 17:19:08
阅读次数:
225
1、KVO KVO简介:Key Value Observing,通过Key键观察对象的对应Key键的属性值Value是否发生改变。 KVO的作用: 当前对象想监听另一个对象的某个属性是否发生变化。 KVO使用步骤:①给对象的某个属性添加监听器;②监听器实现监听方法;③对象销毁前一定要移除监听器。 当 ...
分类:
移动开发 时间:
2017-02-05 15:00:27
阅读次数:
213
commons-pool组件是使用对象池时都要用到的。他的作用主要是管理对象池, 当我们要用这个组件时(比如redis要用到时),只需要实现它的部分接口,比如PooledObjectFactory接口,实现它的创建对象,销毁对象。。等方法 继承它的GenericObjectPoolConfig类,设 ...
分类:
其他好文 时间:
2017-01-01 15:24:23
阅读次数:
133
python对象销毁(垃圾回收): 1>同Java语言一样,python使用了引用计数这一简单计数来追踪内存中的对象,也就是说,python内部记录着所有使用中的对象各有多少引用,一个内部跟踪变量称为一个引用计数器,当对象被创建的时候就创建了一个引用计数,当这个对象不再需要的时候,也就是说,这个对象 ...
分类:
编程语言 时间:
2016-12-17 19:29:32
阅读次数:
162
遇见的问题 Outofmemery 1,注意bitmap对象销毁 if(bitmapObject.isRecycled()==false) //如果没有回收 bitmapObject.recycle(); 1, 除了上次Android开发网提到的 优化Dalvik虚拟机的堆内存分配外,我们还可以强制 ...
分类:
移动开发 时间:
2016-12-14 13:50:48
阅读次数:
296
Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。 面向对象三大特性:封装、继承、多态 1.面向对象简介 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 类变量:类变量 ...
分类:
编程语言 时间:
2016-11-23 06:28:15
阅读次数:
211