变量名 $variable 是 ${variable}的简写, 双引号括起来的变量替换是不会被阻止的,叫弱引用,单引号则会被阻止,也叫强引用。 变量在赋值时,前后不能有空格。 Bash变量不区分类型,Bash变量都是字符串。 ...
分类:
系统相关 时间:
2016-10-20 12:34:40
阅读次数:
219
前言: 从事Android开发的同学都知道移动设备的内存使用是非常敏感的话题,今天我们来看下如何使用软引用与弱引用来优化内存使用。下面来理解几个概念。 1.StrongReference(强引用) 强引用是我们最最常见的一种,一般我们在代码中直接通过new出来的对象等,都是强引用,强引用只要存在没有 ...
分类:
移动开发 时间:
2016-10-20 09:51:29
阅读次数:
189
C++智能指针 weak_ptr weak_ptr 是一种不控制对象生命周期的智能指针, 它指向一个 shared_ptr 管理的对象. 进行该对象的内存管理的是那个强引用的 shared_ptr. weak_ptr只是提供了对管理对象的一个访问手段. weak_ptr 设计的目的是为配合 shar ...
分类:
编程语言 时间:
2016-10-04 14:04:13
阅读次数:
251
问题描述: 用NSTimer来实现每隔一定时间执行制定的任务,例如最常见的广告轮播图。如果我们在 timerWithTimeInterval:1 target:self 中指定target为当前控制器,控制器则会被timer强引用,而控制器对timer也是强引用的。一般,我们终止定时器往往在界面销毁 ...
分类:
其他好文 时间:
2016-10-03 10:49:36
阅读次数:
267
强引用: 类似:object A=new Object();这样的引用,只要强引用还存在,垃圾回收期就永远不会回收被引用的对象,eg:这里的new Oject(). 软引用: 一些还有用,但是非必需的的对象,对于软引用关联的对象,在系统将要发生内存泄漏之前,将会把这些对象列入回收范围,并进行二次回收 ...
分类:
编程语言 时间:
2016-09-26 21:38:13
阅读次数:
164
根控制器没办法销毁,除非程序退出 从一个控制器跳到另外一个控制器,调用该控制器的pop方法才会销毁该控制器 self是一个强指针 在block中使用self时要注意循环引用的问题 最好将当前block中的self 强引用换成弱引用 如下图: ...
分类:
其他好文 时间:
2016-09-26 12:23:28
阅读次数:
120
背景:收到公众投稿,《从面试题中看Java的Reference(引用)》,分析的很不错,总感觉少了实际的例子和应用场景。于是结合自己工作中场景,小总结一下。看下Agenda如下:
1、强引用
2、软引...
分类:
移动开发 时间:
2016-09-24 21:58:51
阅读次数:
228
对于Java中的垃圾回收机制来说,对象是否被回收的标准在于该对象是否被引用。因此,引用也是JVM进行内存管理的一个重要概念。 Java中对象的引用一般有以下4种类型: 1强引用 2软引用 3弱引用 4虚引用 以下一一介绍其用法和区别 1强引用:在Java中最常见的就是强引用,把一个对象赋给一个引用变 ...
分类:
编程语言 时间:
2016-09-18 21:12:54
阅读次数:
155
Java 中有四种引用:强引用、软引用、弱引用、虚引用; 其主要区别在于垃圾回收时是否进行回收: 1.强引用 使用最普遍的引用。如果一个对象具有强引用,那就 类似于必不可少的生活用品,垃圾回收器绝不会回收它。当内存空 间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止 ...
分类:
编程语言 时间:
2016-09-15 16:37:28
阅读次数:
152
引用类型
强引用:类似Objecto=newObject()这种引用。只要强引用还存在,对象不会被回收。
软引用:对于软引用关联的对象,在系统将要发生内存溢出前,会被纳入回收范围,并进行第二次回收。
弱引用:被弱引用关联的对象只能生存到下一次回收之前。无论内存是..
分类:
其他好文 时间:
2016-09-13 22:45:53
阅读次数:
217