ios 多线程简介
来源:互联网 发布:微信第三方平台 php 编辑:程序博客网 时间:2024/04/27 23:13
ios多线程使用简介以及与进程之间的关系
使用领域:耗时操作,例如网络图片、视频、歌曲、书籍等资源下载
游戏中的声音播放
优势:充分发挥多核处理器优势,将不同线程任务分配给不同的处理器,真正进入“并行运算”状态
将耗时、轮询或者并发需求高等任务分配到其他线程执行,并由主线程负责统一更新界面会使得应用程序更加流畅,用户体验更好
当硬件处理器的数量增加,程序会运行更快,而无需做任何调整
难点:共享资源的“争夺”
多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了通过提高资源使用效率来提高系统的整体性能
注意事项:
*线程使用不是无节制的
*iOS中的主线程的堆栈大小是1M
*从第二个线程开始都是512KB
*这些数值不能通过编译器开关或线程API函数更改
*只有主线程有直接修改UI的能力
进程与线程概念
*一个运行的程序就是一个进程或者叫做一个任务
* 一个进程至少包含一个线程,线程是程序的执行流
*iOS程序启动时,在创建一个进程的同时, 会开始运行一个线程,该线程被称为主线程
*主线程是其他线程最终的父线程,所有界面的显示操作必须在主线程进行!!!
*后台线程无法更新UI界面和响应用户点击事件
*系统中的每一个进程都有自己独立的虚拟内存空间,而同一个进程中的多个线程则共用进程的内存空间
*每创建一个新的线程,都会消耗一定内存和CPU时间
*当多个线程对同一个资源出现争夺的时候需要注意线程安全问题
iOS的三种多线程技术
- NSThread — 每个NSThread对象对应一个线程,量级较轻
- NSOperation/NSOperationQueue — 面向对象的线程技术
- GCD —— Grand Central Dispatch — 是基于C语言的框架,可以充分利用多核,是苹果推荐使用的多线程技术
- iOS多线程 一一 多线程简介
- ios 多线程技术简介
- iOS 多线程简介 一
- iOS多线程简介
- ios 多线程简介
- ios多线程简介
- ios多线程 - NSThread 简介
- ios多线程 -- NSOperation 简介
- IOS开发—多线程简介
- iOS开发多线程篇简介
- iOS多线程GCD简介(二)
- #iOS多线程编程及GCD简介
- iOS多线程简介 - Swift版本 3.多线程开发 -- Run Loop
- 猫猫学iOS(五十三)多线程网络之NSOperation简介
- AJ学IOS(53)多线程网络之NSOperation简介
- 多线程简介
- 多线程简介
- 多线程简介
- core模块的初始化
- android apk打包流程
- 结构体二级指针的初始化
- [BZOJ3790] 神奇项链
- iOS获取当前无线连接的SSID信息和WI-FI名称
- ios 多线程简介
- Cookie实战项目1 用Cookie获取用户名信息 技术 Cookie+JQuery
- 增强现实(Augmented Reality)浅谈
- 经常用到的javaScript技术代码(经典)
- poj3468(线段树)
- JMeter 接口测试及自动化接口压力测试
- 理解JavaScript中的闭包
- 祝你幸福
- PhpWord 如何输出换行符到 word?