使用了Heap视图的方式来分析内存泄露之后,我们尝试用MAT插件来分析下。MAT,提供了太强大的功能,以至于在测试的过程中也是懵懂的,没有彻底的研究。1.
安装AndroidSdk,Java SDK,Eclipse之类的软件之后,2. 安装Eclipse MAT插件3. 调出DDMS的Heap视图4...
分类:
其他好文 时间:
2014-06-29 14:54:30
阅读次数:
297
@前面的文章讲到,在Block中用到self(self特指UIViewController),需要用__block或者__weak修饰(MRC与ARC的区别),因为Block调用会对其里面的对象引用计数加1,如果你不确定你调用的Block是否会产生循环引用的话,最好用__block或__weak修饰.当然,如果你确定并不会产生循环引用的情况,那你可以放心的self. self. (~O(∩_∩)...
分类:
其他好文 时间:
2014-06-08 16:34:27
阅读次数:
215
iphone开发过程中,代码中的内存泄露我们很容易用内存检测工具leaks
检测出来,并一一改之,但有些是因为ios 的缺陷和用法上的错误,leaks
检测工具并不能检测出来,你只会看到大量的内存被使用,最后收到didReceiveMemoryWarning,最终导致程序崩溃。以下是开发过程中遇到的...
分类:
移动开发 时间:
2014-06-08 00:48:12
阅读次数:
275
1,循环参照A有个属性参照B,B有个属性参照A,如果都是strong参照的话,两个对象都无法释放。这种问题常发生于把delegate声明为strong属性了。例,@interface
SampleViewController@property (nonatomic, strong) SampleCl...
分类:
其他好文 时间:
2014-06-07 23:40:44
阅读次数:
366
虽然iOS
5.0版本之后加入了ARC机制,由于相互引用关系比较复杂时,内存泄露还是可能存在。所以了解原理很重要。这里讲述在没有ARC的情况下,如何使用Instruments来查找程序中的内存泄露,以及NSZombieEnabled设置的使用。本文假设你已经比较熟悉Obj-C的内存管理机制。实验的开...
分类:
移动开发 时间:
2014-06-07 22:58:12
阅读次数:
319
内存泄漏的问题,在百度是遇到最多的,阿里相对少点。与内存泄漏斗争了很久,我总结下常用的一些有效测试方法吧。1、valgrind,这是非常好用的工具,虽然参数很多,输出结果较多,但是只要认真看下,就很容易发现问题,报告是很详细的,不要被吓倒。valgrind检测的内存泄漏是非常准的,可以精确定位到代码...
分类:
其他好文 时间:
2014-06-07 04:41:11
阅读次数:
169
转载自:http://www.cnblogs.com/qianxudetianxia/p/3645106.htmlContext作为最基本的上下文,承载着Activity,Service等最基本组件。当有对象引用到Activity,并不能被回收释放,必将造成大范围的对象无法被回收释放,进而造成内存泄...
分类:
移动开发 时间:
2014-06-07 04:40:33
阅读次数:
258
转载地址:http://www.cnblogs.com/qianxudetianxia/p/3655475.html5.
AsyncTask对象 我N年前去盛大面过一次试,当时面试官极力推荐我使用AsyncTask等系统自带类去做事情,当然无可厚非。
但是AsyncTask确实需要额外注意一下。.....
分类:
移动开发 时间:
2014-06-07 04:39:11
阅读次数:
349
block在项目的开发中使用时非常频繁的,苹果官方也极力推荐使用block。其实,究其本质,block就是指向结构体的指针(可利用运行时机制查看底层生成的c代码)。然而在使用block时会存在很多陷阱(主要是内存泄露),这些都是必须要注意的。接下来举个简单的实例:假设一个类,拥有两个属性:blo.....
分类:
其他好文 时间:
2014-06-05 17:27:08
阅读次数:
186
YES,it's so easy,what we need to do is just include ,then the information of
memory leaking will be shown on the screen....
分类:
其他好文 时间:
2014-05-31 21:14:52
阅读次数:
334