多线程基础

什么是多线程

多线程是一个比较轻量级的方法来实现单个应用程序内多个代码执行路径。

1个CPU核执行多条不同路径上的不同命令,就是多线程。

多线程的优点

  • 能适当提高程序的执行效率。
  • 能适当提高程序的利用率

多线程的缺点

  • 开启线程需要消耗资源
  • 线程越多,CPU开销就越大
  • 程序设计更复杂,线程之间的通信等

iOS中多线程方案

pthread

  • 通用的多线程API
  • 跨平台 Unix、Linux、Window
  • 使用难度大,难以维护
  • 使用C语言

iOS开发中基本上没有用到。

NSThread

  • 面向对象
  • 简单易用,直接操作线程对象
  • 使用OC语言

iOS开发中比较少使用。

CGD

  • 充分利用设备的多核
  • 替代NSThread等
  • C语言

iOS开发中大量使用。

NSOperation

  • 基于GCD
  • 面向对象
  • OC语言

iOS开发中经常使用。

坚持原创技术分享,您的支持将鼓励我继续创作!