IOS多线程技术浅谈

   多线程的根本目的和优势在于:

     (1)充分发挥多核处理器优势,将不同线程任务分配给不同的处理器,真正进入“并行运算”状态;
     (2)将耗时的任务分配到其他线程执行,由主线程负责统一更新界面会使应用程序更加流畅,使得用户体验更好;
     (3)当硬件处理器的数量增加,程序会运行更快,而程序无需做任何调整.
  
   但是:
      很多人以为开多条线程,会提高单个算法本身的执行效率,这是一个典型的误区,它只是并发执行多项任务,在时间片之间快速切换.
 
   目前流行的三中iOS多线程技术,本人还是偏爱GCD( Grand Central Dispatch)来做一些开线程的任务处理,原因很简单:TA是基于C语言的底层API,提供了很多block回调方法,使用起来非常灵活便捷,其提供的底层函数使得我们在处理业务时控制力更加强大!!!!
   
  GCD中最有用的算是串行异步了:
   dispatch_queue_t q = dispatch_queue_create("提示信息", DISPATCH_QUEUE_SERIAL);
   dispatch_async(q, ^{

    NSLog(@"串行异步 %@", [NSThread currentThread]);

   });

  异步操作会根据进程创建新的线程,而且其执行是有序的,不会影响到主线程才是根本,  哎呀,太晚了,明天再写一个小demo,进一步体会c的强大之处!!!!!

 

 

posted @ 2014-05-20 00:06  Victor·旋  阅读(421)  评论(0编辑  收藏  举报