ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewController { UIImage *_image; NSInteger _index; } @endViewController.m #imp ...
分类:
其他好文 时间:
2017-07-25 16:00:52
阅读次数:
127
block是不是一个对象?是一个对象 如何判断当前文件是MRC,还是ARC 1.dealloc 能否调用super,只有MRC才能调用super 2.能否使用retain,release.如果能用就是MRC ARC管理原则:只要一个对象没有被强指针修饰就会被销毁,默认局部变量对象都是强指针,存放到堆 ...
分类:
其他好文 时间:
2017-07-25 00:55:20
阅读次数:
141
ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewController { UIImage *_image; NSInteger _index; } @endViewController.m #imp ...
分类:
其他好文 时间:
2017-05-01 14:20:01
阅读次数:
148
前言 本篇文章精讲iOS开发中使用Block时一定要注意内存管理问题,很容易造成循环引用。本篇文章的目标是帮助大家快速掌握使用block的技巧。 我相信大家都觉得使用block给开发带来了多大的便利,但是有很多开发者对block内存管理掌握得不够好,导致经常出现循环引用的问题。对于新手来说,出现循环 ...
分类:
移动开发 时间:
2016-05-09 23:46:06
阅读次数:
697
Objective-C总Runtime的那点事儿(一)消息机制 最近在找工作,Objective-C中的Runtime是经常被问到的一个问题,几乎是面试大公司必问的一个问题。当然还有一些其他问题也几乎必问,例 如:RunLoop,Block,内存管理等。其他的问题如果有机会我会在其他文章中介绍。本篇 ...
分类:
移动开发 时间:
2016-04-30 10:05:30
阅读次数:
139
前言 本篇文章精讲iOS开发中使用Block时一定要注意内存管理问题,很容易造成循环引用。本篇文章的目标是帮助大家快速掌握使用block的技巧。 我相信大家都觉得使用block给开发带来了多大的便利,但是有很多开发者对block内存管理掌握得不够好,导致经常出现循环引用的问题。对于新手来说,出现循环 ...
分类:
移动开发 时间:
2016-03-31 02:03:48
阅读次数:
344
首先交代一下retain cycle ,和 产生retain cycle后我们应该怎么处理。1.retain cycle在block中是极易产生,block就是一段可以灵活使用的代码,你可以把它当做变量传递,赋值,甚至可以把它声明到函数体中。更加灵活的是它可以引用它的承载着(即就是block的运行环...
分类:
其他好文 时间:
2015-09-29 23:27:21
阅读次数:
211
初始情况下:block本身、__block修饰的变量以及在block内部使用的变量都是在栈里的。__block修饰的变量的地址会作为实参传入block块内部(暂时先这么理解,实际比较复杂)。block使用的外部变量被const拷贝到了block内部。也就是block使用的外部变量和这个外部变量本身没...
分类:
移动开发 时间:
2015-09-03 17:50:29
阅读次数:
180
Block简介(copy一段)Block作为C语言的扩展,并不是高新技术,和其他语言的闭包或lambda表达式是一回事。需要注意的是由于Objective-C在iOS中不支持GC机制,使用Block必须自己管理内存,而内存管理正是使用Block坑最多的地方,错误的内存管理要么导致return cyc...
分类:
移动开发 时间:
2015-08-11 15:44:07
阅读次数:
152