swift开启线程的3种方式(其实很简单的)

swift开启线程的3种方式(其实很简单的),第1张

概述import UIKit class swiftThreadDemo : UIViewController { var queue = NSOperationQueue() // init() // { // //alloc // super.init() // } dein
import UIKit      class swiftThreadDemo : UIVIEwController  {      var queue = NSOperationQueue()  //    init()  //    {  //        //alloc  //        super.init()  //    }            deinit      {          //dealloc      }            func testGCDThread()      {          dispatch_async(dispatch_get_global_queue(disPATCH_QUEUE_PRIORITY_DEFAulT,0),{                //这里写需要大量时间的代码                for var i = 0; i < 100000; i++              {                  println("GCD thread running.")              }                            sleep(5);                dispatch_async(dispatch_get_main_queue(),{                    //这里返回主线程,写需要主线程执行的代码                  println("这里返回主线程,写需要主线程执行的代码")                  })              })      }            func testNSThread()      {          //方式一          //NSThread.detachNewThreadSelector("threadInMainMethod:",toTarget:self,withObject:nil)                    //方式二          var myThread = NSThread(target:self,selector:"threadInMainMethod:",object:nil)          myThread.start()                }            func threadInMainMethod(sender : AnyObject)      {          for var i = 0; i < 100000; i++          {              println("NSThread running.")          }                    sleep(5);          println("NSThread over.")      }            func testNSOperationQueue()      {          //func (op: NSOperation!)          var mopt = myOperationThread()          queue.addOperation(mopt)      }  }      class myOperationThread : NSOperation  {      overrIDe func start()      {          super.start()      }            overrIDe func main()      {          for var i = 0; i < 100000; i++          {              println("NSOperation running.")          }          println("NSOperation over.")      }  } 
调用:
var st = swiftThreadDemo()          st.testNSThread()          sleep(2)          st.testGCDThread()                    st.testNSOperationQueue()  
这就常用开启线程的3种方式 总结

以上是内存溢出为你收集整理的swift开启线程的3种方式(其实很简单的)全部内容,希望文章能够帮你解决swift开启线程的3种方式(其实很简单的)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1082207.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存