iOS dispatch_source_t的理解】的更多相关文章

Dispatch Source是GCD中的一个基本类型,从字面意思可称为调度源,它的作用是当有一些特定的较底层的系统事件发生时,调度源会捕捉到这些事件,然后可以做其他的逻辑处理,调度源有多种类型,分别监听对应类型的系统事件.我们来看看它都有哪些类型: Timer Dispatch Source:定时调度源. Signal Dispatch Source:监听UNIX信号调度源,比如监听代表挂起指令的SIGSTOP信号. Descriptor Dispatch Source:监听文件相关操作和So…
iOS开发SDWebImageOptions理解 原文 http://www.cnblogs.com/WJJ-Dream/p/5816750.html typedef NS_OPTIONS(NSUInteger, SDWebImageOptions) { SDWebImageRetryFailed = 1 << 0, SDWebImageLowPriority = 1 << 1, SDWebImageCacheMemoryOnly = 1 << 2, SDWebImag…
开源的RunloopRef 通常所说的RunLoop指的是NSRunloop或者CFRunloopRef,CFRunloopRef是纯C的函数,而NSRunloop仅仅是CFRunloopRef的OC封装,并未提供额外的其他功能,因此下面主要分析CFRunloopRef,苹果已经开源了CoreFoundation源代码,因此很容易找到CFRunloop源代码. 从代码可以看出CFRunloopRef其实就是**__CFRunloop这个结构体指针(按照OC的思路我们可以将RunLoop看成一个对…
No matching provisioning profiles found. No matching code signing identity found. Your account already has a valid iOS Distribution certificate. 由于苹果只允许它授权过的 App 才能运行在 iPhone 等设备上,所以当开发者想用真机测试 App 的时候需要做一些配置才可以,但是如果没搞清楚就会出现很多上面这些烦人的错误,导致不能成功地在手机调试 Ap…
iOS9 提供的UIStackview简化了布局操作,它有些像Android中的liner layout.以前不用UIStackview也是可以做出类似的效果的,不过要添加许多的约束,看得头都大了,使用了UIStackview后,约束得到了简化. UIStackview中,不太好理解的就是distribution这个属性,它的值如下: typedef NS_ENUM(NSInteger, UIStackViewDistribution) { UIStackViewDistributionFill…
前言 做了几年iOS app coder了,对于证书的生成.使用流程烂熟于心,然而对于这套机制的原理却一直不甚理解.近来由于工作需要仔细研究了一下,特将自己的学习经验记录于此,以供大家学习指正. 问题 通常的iOS应用的签名流程是这样的(这里只是大概写一下,具体流程网上有很多): 访问钥匙串,使用“证书助理”的“从证书颁发机构请求证书”生成一个CertificateSigningRequest.certSigningRequest文件. 打开https://developer.apple.com…
注:本人是翻译过来,并且加上本人的一点见解. 前言 可能你很难相信 UIScrollView 和一个标准的 UIView 差异并不大,scroll view 确实会多出一些方法,但这些方法只是和 UIView 的属性很好的结合到一起了.因此,在要想弄懂 UIScrollView 是怎么工作之前,你需要先了解一下 UIView,特别是视图渲染的两步过程. 目录 1. 光栅化和组合2. Scroll View的ContentOffset3. 世界之窗:ContentSize4. 用Content I…
做了一年的iOS,想记录自己对知识点的一点理解. 第一篇,想记录一下iOS中delegate(委托,也有人称作代理)的理解吧. 故名思议,delegate就是代理的含义, 一件事情自己不方便做,然后交给其他人去帮助实现, 比如A.B两个类,A的一个对象有一个任务aTask要在B类中实现,任务无法在A类本身中实现,所以要交给B类帮忙,则A和B约定一个协议: A类: @protocol ADelegate <NSObject> -(void)aTask; //协议的一个方法 @end //代理属性…
GCD (Grand Central Dispatch) 是Apple公司开发的一种技术,它旨在优化多核环境中的并发操作并取代传统多线程的编程模式. 在Mac OS X 10.6和IOS 4.0之后开始支持GCD. 使用GCD的一个理由就是方便.回想一下以前的多线程编程,我们会把异步调用的代码放到另外的一个函数中,并通过NSThread开启新线程来启动这段代码. 这种跳来跳去的流程对于复杂的逻辑简直就是一场灾难.更糟糕的是,调用线程时的环境对异步代码是不可见的,如果我们需要当时的临时变量的话只有…
模型-视图-控制器(Model-View-Controller,MVC)是Xerox PARC在20世纪80年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已广泛应用于用户交互应用程序中.在iOS开发中MVC的机制被使用的淋漓尽致,充分理解iOS的MVC模式,有助于我们程序的组织合理性. 模型对象 模 型对象封装了应用程序的数据,并定义操控和处理该数据的逻辑和运算.例如,模型对象可能是表示游戏中的角色或地址簿中的联系人.用户在视图层中所进行的创 建或修改数据的操作,通过控制器对…