进程的概念:每一个进程都是一个应用程序,都有独立的内存空间,一般情况下,一个应用存在一个进程,但也有多个进程的情况(比如浏览器)
同一个进程中的线程共享内存中的内存和资源。
多线程的概念:每一个程序都有一个主线程,调用main函数启动
主线程的生命周期和应用程序是绑定的,程序退出时,主线程也就停止了
多线程技术表示,使用多线程可以提高CPU的使用率,防止主线称堵塞。
任何有可能堵塞主线称的任务不要放在主线称执行(访问网络)
注意:线程的使用不是无节制的,只有主线称有直接修改UI的能力
iOS三种多线程技术的优缺点:
1.NSThread:
优点:NSThread比其他两个轻量级,使用简单
缺点:需要自己管理线程的生命周期、线程同步、加锁、睡眠及唤醒等。线程同步对数据的加锁有一定的系统开销
2.NSOperation:
不需要关心线程管理,数据同步的事情,可以把精力放在自己需要执行的操作上
NSOperation是面向对象的
3.GCD
Grand Central Dispatch 是由苹果开发的一个多核编程的解决方案。iOS4.0+才能使用,是替代NSThread、NSOperation的高效和强大的技术
GCD是基于c语言的
时间: 2024-10-04 13:55:15