这是我学习 JAVA 强引用、软引用还有弱引用的学习心得~...
分类:
其他好文 时间:
2015-06-21 11:57:59
阅读次数:
209
博客出自:http://blog.csdn.net/liuxian13183,转载注明出处! All Rights Reserved ! 有关图片的优化,通常我们会用到LruCache(使用强引用、强制回收的办法),会用到SoftReference(使用url做key,bitmap做value的方法),会用到根据手机屏幕来缩放图片,会及时回收图片所占用的内存等方法,但说实在的,这些方法治标不治本,...
分类:
移动开发 时间:
2015-06-19 00:03:56
阅读次数:
263
1、strong和weak
strong:强指针/强引用;默认情况下,任何指针都是强指针 ;也就是说,我们平常定义的时候Person *p =[ [Person alloc] init];都是strong;
weak:弱指针/弱引用;使用_weak修饰的指针。
ARC(自动引用计数)的判断准则:只要没有任何强指针指向,这个对象就会被销毁;
当然超过自己的作用范围也会被销毁;
但是程...
分类:
移动开发 时间:
2015-06-14 09:38:41
阅读次数:
245
LruCache是android提供的一个常用而且有用的数据缓存工具类.
LruCache是一个通过强引用来保存一定数量的数据的缓存技术.每次使用一个数据时候,这个数据就会被移动到队列的最前面(这样维护来一个访问数据的顺序).当新加一个数据到这个已经满了的缓存时候,这个缓存里面最后面的数据(最不常使用的数据)就会被清理掉....
分类:
系统相关 时间:
2015-06-13 18:37:30
阅读次数:
399
所谓内存泄露,其实就是对象在该被回收的时候并没有被正确回收,内存里游走着这些野指针。所以理解这几种引用方式很重要,借大神的博客一用。转载:http://blog.csdn.net/mazhimazh/article/details/19752475引用类型被垃圾回收时间 用途 生存时间强引用从来不会...
分类:
编程语言 时间:
2015-06-09 19:48:59
阅读次数:
139
NSTimer作为一个常用的类,却有一个最大的弊病,就是会强引用target,造成调用timer非常麻烦,稍有不慎就造成内存泄漏。
以下就是为解决这个问题做的封装。
直接上代码:
#import
@interface LZLTimer :
NSObject
-(void)startTimerInterval:(NSTimeInterval)ti target...
分类:
其他好文 时间:
2015-06-09 17:11:03
阅读次数:
150
常见内存泄露原因Context对象泄漏1、如果一个类持有Context对象的强引用,就需要检查其生存周期是否比Context对象更长。否则就可能发生Context泄漏。2、View持有其创建所在Context对象的引用,如果将View对象传递给其它生存周期比View所在Context更长的强引用,就...
分类:
移动开发 时间:
2015-06-09 15:35:47
阅读次数:
149
OC8-内存管理
OC语言中的内存管理机制为ARC(Automatic Reference Counting,自动引用计数)。与2011年中旬推出,替换陈旧且低效的手动内存管理,关于手动内存管理的内容,本章教程不在讲授。本章主要从以下几个方面对内存管理进行展开讲讲解。
内存管理原则对象引用类型属性引用类型强引用循环AUTO类型与释放池
1,内存管理原则
核心原则:没有被对象指针使用(指...
分类:
其他好文 时间:
2015-06-01 22:47:53
阅读次数:
260
stong和weak用来修饰指针的strong强指针;\强引用,对象,ios5以前叫retainweak弱指针\若饮用,,UI控件,代理,iOS5以前叫weakcopy:字符串,复制 深复制\浅复制@property copy\weak\strong\assign\retainweak(assign...
分类:
其他好文 时间:
2015-05-31 16:41:16
阅读次数:
110
解决循环引用: 在知道存在循环引用的条件下,使用boost::weak_ptr,即弱引用来代替循环引用中的某个强引用,从而打破循环引用的环。由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete,比如流程太复杂,最终导致没有 delete,异常导致程序过早退出,...
分类:
编程语言 时间:
2015-05-27 22:39:10
阅读次数:
597