IOS开发之多线程NSThiread GCD NSOperation Runloop
IOS中的进程和线程通长来说一个app就是一个进程NSThreadNSthread就是一个线程,它的底层是对pthread的封装,用于创建一个新的线程,我们也可以通过NSThread中的一些属性来获取信息,比如currentThread,isMainThread。GCDGCD是代码中dispatch开头的相关的代码。GCD解决了NSThread使用的不方便。它将对线程的操作变成了对队列的操作。GCD中主要有三种队列:第二:非主线程按照优先级分为4中不同优先级的非主队列。High/default/Low/Background第三:自定义队列GCD的使用,分为同步执行和异步执行。Runloop就是配合着底层的thread,来处理我们的手势,交互,以及一些端口的管理等。举个例子,主线程为什么会一直存在不被销毁,底层就是Runloop在维护,它让主线程在不执行的时候进行睡眠。最后,我们从宏观对IOS的多线程有一个认识。
用户评论