自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 block

一、block的本质block本质上也是一个OC对象,它内部也有一个isa指针block内部代码会封装到_block_func_0函数中,函数地址保存在FuncPtr中执行block内部代码时是通过FuncPtr找到函数地址进行调用int age = 10;void (^block)(void) = ^ { NSLog(@"%d", age);};//block底层结构struct __block_impl { void *isa; int Flags;

2021-01-19 15:37:48 304 1

原创 KVO的本质

KVO俗称“键值监听”,可以用于监听某个对象属性值的改变利用runtimeAPI动态生成一个子类,并且让instance对象的isa指向这个全新的子类当修改instance对象的属性时,会调用Foundation的_NSSetXXXValueAndNotify函数_NSSetXXXValueAndNotify函数内部会调用1、willChangeValueForKey:2、父类原来的setter实现3、didChangeValueForKey:didChangeValueForKey

2021-01-18 17:54:04 86

原创 NSString为什么用copy修饰

@property (nonatomic, copy) NSString *name1;@property (nonatomic, strong) NSString *name2;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; //当为可变字符串的时候,

2018-01-08 10:48:28 192

原创 多线程之互斥锁

互斥锁小结互斥锁,就是使用了线程同步技术. 同步锁/互斥锁:可以保证被锁定的代码,同一时间,只能有一个线程可以操作. self :锁对象,任何继承自NSObject的对像都可以是锁对象,因为内部都有一把锁,而且默认是开着的. 锁对象 : 一定要是全局的锁对象,要保证所有的线程都能够访问,self是最方便使用的锁对象. 互斥锁锁定的范围应该尽量小,但是一定要锁住资源的读写部分. 加锁后程序执

2016-10-23 09:10:25 193

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除