大兵布莱恩特

专注iOS开发喜欢 C/C++ 开发语言

iOS使用GCD实现一个Timer

由于 NSTimer 要加到 runloop 中才能工作,这样的话 runloop 在跑圈的时候,如果遇到了当前线程任务比较繁忙,那么它处理 NSTimer 的时机就会滞后,导致 NSTimer 不够准时.因为我们可以用 GCD 的 dispatch_soure_t 去实现一个自己的定时器,而且...

2018-07-11 17:21:05

阅读数:72

评论数:0

iOS窥探KVO底层实现实战篇

上文讲到 iOS KVO 底层实现原理https://www.jianshu.com/p/0aa83ac521ba,大概就是runtime时候动态的创建一个子类,并重写了子类的 setter dealloc class 等方法,将当前类的 isa 指针指向这个子类,这样就不会影响原有类的实现 ...

2018-07-09 13:38:38

阅读数:30

评论数:0

iOS窥探KVO底层原理

最近小编公司招聘 iOS, 于是小编从网上找了几道面试题,来考察候选人iOS 开发方面的技术水平,其中有一道面试题便是 KVO 底层实现是什么? 如何手动出发 KVO? 修改成员变量的值会出发 KVO 吗? KVC 赋值会出发 KVO 吗? 当你了解 KVO 实现原理后,这几道面...

2018-07-07 17:19:44

阅读数:90

评论数:0

iOS[super class]和[self class]

最近小编所在公司招 iOS 开发职位,小编也出了几道面试题考察下候选人的 iOS 开发水平,其中有一道题如下: @implementation Student : Person - (instancetype)init { self = [super init]; if (...

2018-07-07 09:59:39

阅读数:251

评论数:0

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