首页 > 编程语言 > 详细

Swift 学习-多线程

时间:2014-08-19 23:49:45      阅读:419      评论:0      收藏:0      [点我收藏+]

1:第一种多线程

  func fun1(){

  for i in 200...300{

  NSLog("%d",i);

  }  

   }

  func fun2(){

  for i in 300...400{

  NSLog("%d",i);

  }

  }

  var th1 = NSThread(target:self,selector:"fun1",object:nil);

  th1.start();

  //开启线程

  NSThread.detachNewThreadSelector("fun2",toTarget:self,withObject:nil);

 

第二种创建线程池:

  var queue = NSOperationQueue();

  queue.maxConcurrentOperationCount = 1;

  queue.addOperationWithBlock({

  for i in 400...500{

  NSLog("%d",i);

  }

  var op = NSInvocationOperation (target:self,selector:"fun1",object:nil);

  var op1 = NSInvocationOperation(target:self,selector:"fun2",object:nil);

  queue.addOperation(op);

  queue.addOperation(op1);

  })

 

第三种GCD创建多线程

  

        var queue = dispatch_queue_create("test", nil);

        dispatch_async(queue, {

            for i in 0...100{

                NSLog("异常%d", i);

            }

            dispatch_sync(dispatch_get_main_queue(), {

                NSLog("是否是主线程\(NSThread.isMainThread())");

                })

            })

Swift 学习-多线程,布布扣,bubuko.com

Swift 学习-多线程

原文:http://www.cnblogs.com/qiaojiu9/p/3923406.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!