前言 本文分析源码为libdispatch-1173.40.5,主要分析常用的dispatch API具体的实现原理;先讲解下常用的数据结构体便于后续分析使用:dispatc...
GCDWebServer也可以实现实时web输出日志,XLFacility也可以,他们有什么区别
iOS 日志分析源于iOS App开发时,控制台日志混乱,不便于分析的需要,产生了这篇文章。 基础票 说说NSLog 调用NSLogv => Logs an error message to...
顶点颜色值是怎么表示的,rgb?1.f,0.f表示是什么
OpenGL ES GLKit三角形变换效果图如下: 首先,使用GLKit绘制图形分为以下两个步骤 初始化上下文 使用GLKBaseEffect渲染图形 初始化上下文 新建OpenGL ES上下文,EAGLCont...
fromValue和byValue是非零。 插值(也就是动画执行)从fromValue到toValue,亲测
iOS动画之CABasicAnimation我们首先来看看Core Animation类的继承关系图 示例 从苹果官方API我们可以了解到CABasicAnimation(基础动画)算是CAKeyframeAnimat...
想知道。yymodel为啥性能高,处理这块的代码在哪里
YYModel 源码剖析:关注性能系列文章:YYText 源码剖析:CoreText 与异步绘制YYAsyncLayer 源码剖析:异步绘制YYCache 源码剖析:一览亮点YYModel 源码剖析:关注性能...
项目代码 runloopDemo CFCoreFoundation源码 目录 从主线程runloop啥时候开启 runloop对象是怎么存储的 runloop怎么跑起来的,又...
当调用 performSelector:onThread: 时,实际上其会创建一个 Timer 加到对应的线程去
怎么证明这句话呢
RunLoop与PerformSelectorPerformSelecter 当调用 NSObject 的 performSelecter:afterDelay: 后,实际上其内部会创建一个 Timer 并添加到当前线程...
[CATransaction begin];
[CATransaction setCompletionBlock:^{
}];
这两句的作用是什么
浅谈TableView的begin Updates和end Updates实现效果如下 通过tableView的reloadData方法我们可以方便的对tableVie的cell根据数据源进行刷新。但是这种刷新方法在某些时候也不是那么合适。比如只需...
那这时候等待是自旋还是休眠
iOS 信号量机制信号量机制 在 iOS 系统及大部分现代操作系统中,多个线程可以并发执行,CPU在线程之间来回切换,共享某些资源,提高了资源的利用率。但是我们该如何处理各个线程之间的相互制约...
最近在面试的过程中才发现太多没有注意的细节,每一个问题问到最后都是在怀疑人生中度过... 正好趁着工作敲定了之后将performSelector相关的细节总结一番。 基础用法...
看错,用weakself没有这个问题
Block中strongSelf的使用Block中strongSelf的使用 1.weakSelf与其缺陷 这里会有两种情况: 若从A push到B,10s之内没有pop回A的话,B中block会执行打印出来11...