谈谈你对多线程开发的理解?ios中有几种实现多线程的方法?


好处:

  1. 使用线程可以把占据时间长的程序中的任务放到后台去处理
  2. 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度
  3. 程序的运行速度可能加快
  4. 在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。

缺点:

  1. 如果有大量的线程,会影响性能,因为操作系统需要在它们之间切换。
  2. 更多的线程需要更多的内存空间。
  3. 线程的中止需要考虑其对程序运行的影响。
  4. 通常块模型数据是在多个线程间共享的,需要防止线程死锁情况的发生。

实现多线程的方法:

NSObject类方法

NSThread

NSOperation

GCD