分享

ios中的线程知识整理

 尹亮亮 2015-05-10
serial  串行    针对队列一个接着一个的去完成 (主队列即串行队列)
concurrent并发 针对队列同时去完成(全局队列 )
synchronous同步  针对函数一个接着一个完成
asynchronous异步  针对函数同事进行

GCD中有三种队列类型  1,主队列  2,全局队列  3自定义队列
创建自定义队列


 
 
 
 

dispatch_after  延时
 
 

dispatch_apply 重复


 
 dispatch_group,

 
 
 
 
dispatch_group_wait,


dispatch_group_notify 调度组(队列并发 异步加载)
dispatch_suspend/dispatch_resume暂停和恢复





NSOperation  NSOperationQueue
NSOperation 封装了需要执行的操作
NSOperation是抽象基类 1,使用系统提供的子类  自定义子类继承
NSOperationQueue是操作队列,专门用来调度和管理NSOperation

 
 是任务并发 方法异步
start(同步)   cancel completionBlock(监听操作完成后的一个事件监听)

addExecutionBlock  追加另外一个任务是(任务并发)  异步加载



自定义NSOperation疑问?????????????

////////////////////////

NSOperation依赖关系addDependency(removeDependency) 
 

修改NSOperation的执行顺序queuePriority  只是增加优先执行的一个权重
 
 

队列的最大并发操作数maxConcurrentOperationCount(队列同步操作的数量)


 
 取消cancel   等待waitUntifinished暂停和dispatch_group_wait类似 。 继续suspended要先于添加的队列之前才能够执行


////////////////////NSTread


NSThread
操作的就是线程 ,不是封装好的队列和操作有时要长时间一直使用子线程时

sleepForTimeInterval(等待的时间)和sleep差不多  ,sleepUntilDate直接给定一个在那

个时间给停顿
detachNewThreadSelector 操作子线程的方法
currentThread 判断当前线程是哪个
main  start  cancel

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多