线程与进程

进程


线程


线程的串行


多线程


多线程的原理


多线程的优缺点

- 多线程的优点

- 能适当提高程序的执行效率

- 能适当提高资源利用率(CPU、内存利用率)

- 多线程的缺点

- 创建线程是有开销的,iOS下主要成本包括:内核数据结构(大约1KB)、栈空间(子线程512KB、主线程1MB,也可以使用-setStackSize:设置,但必须是4K的倍数,而且最小是16K),创建线程大约需要90毫秒的创建时间

- 如果开启大量的线程,会降低程序的性能

- 线程越多,CPU在调度线程上的开销就越大

- 程序设计更加复杂:比如线程之间的通信、多线程的数据共享

多线程在iOS开发中的应用

- 什么是主线程

- 一个iOS程序运行后,默认会开启1条线程,称为“主线程”或“UI线程”

- 主线程的主要作用

- 显示\刷新UI界面

- 处理UI事件(比如点击事件、滚动事件、拖拽事件等)

- 主线程的使用注意

- 别将比较耗时的操作放到主线程中

- 耗时操作会卡住主线程,严重影响UI的流畅度,给用户一种“卡”的坏体验

耗时操作的执行


iOS中多线程的实现方案


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 进程 1:进程是指在系统中正在运行的一个应用程序,进程是程序在计算机上的一次执行活动。 2:每个进程之间是相互独立...
    没有梦想_何必远方阅读 878评论 0 3
  • 线程 线程是用来执行任务的,线程彻底执行完任务A才能去执行任务B。为了同时执行两个任务,产生了多线程。 进程 进程...
    流水点点阅读 297评论 2 0
  • 当某个应用组件启动且该应用没有运行其他任何组件时,Android 系统会使用单个执行线程为应用启动新的 Linux...
    小芸论阅读 1,740评论 0 12
  • iOS中哪些技术可以实现开辟线程,他们之间的联系和区别是什么? 创建方式: NSThread、NSOperatio...
    陪你看日出去阅读 290评论 0 1
  • “叮铃铃……”电话响起,打断了我的美梦,心想:是谁?这么早?会有什么事?带着各种猜测,接起了电话…… 原...
    染指间的伤楚阅读 279评论 0 0