码迷,mamicode.com
首页 > 编程语言 > 详细

Swift 学习-多线程

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

标签:io   for   ar   art   log   new   ad   on   

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 学习-多线程

标签:io   for   ar   art   log   new   ad   on   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!