美文网首页
iOS多线程总结

iOS多线程总结

作者: 魔灵abc | 来源:发表于2018-12-19 10:28 被阅读0次

一、进程与线程的区别

进程:一个正在运行的应用程序,是cpu分配资源的最小单位

线程:一个进程要想执行任务至少有一条线程,线程就是一条无分叉的路径,是程序执行的最小单位

二、多线程原理

1.同一时间,cpu只能处理一条线程,只有一条线程在工作

2.多线程并发执行其实就是cpu快速在多条线程之间快速切换

3.如果cpu调度线程的速度非常快就造成了多线程并发执行的假象(多核cpu是真的并发执行)

思考:如果线程非常多会发生什么情况

1.cpu在n条线程快速切换,消耗资源

2.cpu调用的频率降低,执行效率下降

三、多线程优缺点

优点:能适当提高程序的执行效率,能适当提高资源利用率

缺点:创建线程是有开销的(子线程521KB,主线程1MB),如果开启大量线程降低程序性能,程序设计变得更加复杂

四、多线程安全问题

多线程访问同一块资源时,容易引发数据错乱、数据安全问题,解决方法加一把互斥锁。

五、其它

atomic:线程安全需要消耗大量的资源内部会加锁

nonatomic:非线程安全,适用移动设备

相关文章

  • iOS多线程:『GCD』详尽总结

    iOS多线程:『GCD』详尽总结 iOS多线程:『GCD』详尽总结

  • 线程

    iOS 多线程:『GCD』详尽总结 NSThread详解 IOS 多线程编程 『NSOperation、NSOpe...

  • iOS多线程.md

    2018-05-22 iOS多线程-概念iOS多线程:『pthread、NSThread』详尽总结 多线程-概念图...

  • iOS多线程之NSThread

    前面总结了多线程基本概念和iOS多线程PThread的使用,下面接着总结iOS多线程的另外一种实现方案NSThre...

  • GCD

    转载 iOS多线程:『GCD』详尽总结

  • iOS多线程:『NSOperation、NSOperationQ

    iOS多线程:『NSOperation、NSOperationQueue』详尽总结

  • GeekBand - iOS 多线程和RunLoop 总结

    iOS 开发高级进阶 第三周 多线程 Runloop iOS 多线程以及 RunLoop 学习总结 基础知识 什么...

  • iOS 多线程

    参考链接 iOS多线程iOS 多线程:『GCD』详尽总结iOS简单优雅的实现复杂情况下的串行需求(各种锁、GCD ...

  • iOS开发多线程篇-NSThread

    上篇我们学习了iOS多线程解决方式中的NSOperation,这篇我主要概况总结iOS多线程中NSThread的解...

  • NSOperation

    iOS多线程:『NSOperation、NSOperationQueue』详尽总结这篇文章对NSOperation...

网友评论

      本文标题:iOS多线程总结

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