zoukankan      html  css  js  c++  java
  • Swift 学习-多线程

    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())");

                    })

                })

  • 相关阅读:
    第5次系统综合实践
    第4次系统综合实践
    第3次系统综合实践
    第2次实践作业
    第1次实践作业
    第03组 Beta版本演示
    第03组 Beta冲刺(4/4)
    OO第四单元总结
    OO第三单元总结
    OO第二单元总结
  • 原文地址:https://www.cnblogs.com/qiaojiu9/p/3923406.html
Copyright © 2011-2022 走看看