Swift   发布时间:2022-03-31  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了swift语言的学习笔记五(线程)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

swift 并没有使用新一套线程,使用OC源有的一套线程。下面以例子来演示一下swift中使用线程。 其用包括常见的:NSThread,NSOperationQueue,GCG [cpp]  view plain copy import UIKit         class swiftThreadDemo : UIViewController   {       var queue = NSOp

swift 并没有使用新一套线程,使用OC源有的一套线程。下面以例子来演示一下swift中使用线程。

其用包括常见的:NSThread,NSOperationQueue,GCG

[cpp] view plain copy @H_607_25@
  1. importUIKit
  2. classswiftThreadDemo:UIViewController
  3. {
  4. varqueue=NSOperationQueue()
  5. //init()
  6. //{
  7. ////alloc
  8. @H_450_80@//super.init()
  9. //}
  10. deinit
  11. {
  12. //dealloc
  13. }
  14. functestGCDThread()
  15. dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),{
  16. //这里写需要大量时间的代码
  17. forvari=0;i<100000;i++
  18. println("GCDthreadrunning.")
  19. }
  20. sleep(5);
  21. dispatch_async(dispatch_get_main_queue(),{
  22. @H_450_80@//这里返回主线程,写需要主线程执行的代码
  23. println("这里返回主线程,写需要主线程执行的代码")
  24. })
  25. })
  26. functestNSThread()
  27. @H_450_80@//方式一 @H_450_80@//NSThread.detachNewThreadSELEctor("threadInMainMethod:",@R_605_10586@rget:self,withObject:nil)
  28. //方式二
  29. varmyThread=NSThread(target:self,SELEctor:"threadInMainMethod:",object:nil)
  30. myThread.start()
  31. functhreadInMainMethod(sender:AnyObject)
  32. println("NSThreadrunning.")
  33. println("NSThreadover.")
  34. functestNSOperationQueue()
  35. @H_450_80@//func(op:NSOperation!)
  36. varmopt=myOperationThread()
  37. queue.addoperation(mopt)
  38. class@H_22_32@myOperationThread:NSOperation
  39. overridefuncstart()
  40. super.start()
  41. overridefuncmain()
  42. forvari=0;i<100000;i++
  43. println("NSOperationrunning.")
  44. println("NSOperationover.")
  45. }

调用

    varst=swiftThreadDemo()
  1. st.testNSThread()
  2. sleep(2)
  3. st.testGCDThread()
  4. st.testNSOperationQueue()

大佬总结

以上是大佬教程为你收集整理的swift语言的学习笔记五(线程)全部内容,希望文章能够帮你解决swift语言的学习笔记五(线程)所遇到的程序开发问题。

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

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。