美文网首页
NSThread、GCD、NSOPeration总结

NSThread、GCD、NSOPeration总结

作者: 稻春 | 来源:发表于2018-06-19 20:58 被阅读0次

一、区别

1.NSThread、 GCD、 NSOperation 抽象封装度层次从低到高,抽象封装度越高使用越简单;

1.NSThread是封装程度最小最轻量级的,使用更灵活,但要手动管理线程的生命周期、线程同步和线程加锁等,开销较大;

2.GCD基于NSThread封装,内部进行了效率优化,提供了简洁的C语言接口,使用更加简单高效,也是苹果推荐的方式;速度三者中最快;

3. 从异步操作之间的事务性,顺序行,依赖关系。GCD需要自己写更多的代码来实现,而NSOperationQueue已经内建了这些支持

4. 异步操作如果需要更多的被交互和UI呈现出来,NSOperationQueue更好。GCD任务之间不太互相依赖,而需要更高的并发能力,GCD则更好;

二:注意事项

1.线程安全问题;加锁https://www.jianshu.com/p/fa9167ec50b5

三.线程与进程

一个程序至少包含一个进程,一个进程至少包含一个线程,线程共享当前进程所拥有的资源。

四.线程五大状态:新建状态、就绪状态、运行状态、阻塞状态、死亡状态

相关文章

网友评论

      本文标题:NSThread、GCD、NSOPeration总结

      本文链接:https://www.haomeiwen.com/subject/tsyzeftx.html