IOS 多线程

#基本概念编程

##1、什么是进程多线程

  • 进程是在系统中运⾏行的⼀一个程序,每一个进程之间是独⽴立的,每一个进程均运⾏行在其专 有且受保护的内存空间内。

##什么是线程并发

  • ⼀个进程想要执行任务,必须得有线程(至少⼀个线程),线程是进程的基本执⾏单元,一个进程的全部任务都必须在线程中执行。 ###线程的串行
  • ⼀个线程中任务的执行是串⾏的,若是要在一个线程中执行多个任务,只能⼀个⼀个的按顺序执⾏。 执行顺序

##什么是多线程框架

  • ⼀个进程中能够开启多个线程,每一个线程能够并发/并行执行不一样的任务,多线程 能够提交程序的执行效率,⽐如同时执⾏任务ABC。

多线程的原理

  • 同一时间,CPU只能执⾏⼀个线程,只有⼀个线程正在执行,多线程并发执行,实际上是CPU快速的在多个线程之间切换,若是CPU的切换线程的时间足够快,就会形成多线 程并发执⾏行的假象。

多线程有三种多线程编程技术

  • 一、NSThread(每一个Thread对象对应一个线程)(使用得⽐比较少,线程的生命周期由咱们本身管理)
  • 二、NSOperation(面向对象的线程技术)(基于gcd来实现,常用,生命周期由系统管理)
  • 三、GCD(是基于C语⾔的框架,能够充分利⽤多核,是苹果推荐使⽤的多线程技术)(常用,生命周期由系统管理)) ##NSThread的使用 输入图片说明

##NSOperation 输入图片说明线程

##GCD对象

  • (GCD)是Apple开发的一个多核编程的解决方法。该⽅法在Mac OS X 10.6首次推出,并随后被引⼊到了iOS4.0中。GCD是一个替代诸如NSThread, NSOperationQueue, NSInvocationOperation等技术的很高效和强大的技术 列队
相关文章
相关标签/搜索