zoukankan      html  css  js  c++  java
  • NSOperation的并发与非并发

    NSoperation也是多线程的一种,NSopertaion有2种形式
      (1) 并发执行
           并发执行你需要重载如下4个方法
         //执行任务主函数,线程运行的入口函数
        - (void)start 
           //是否允许并发,返回YES,允许并发,返回NO不允许。默认返回NO
        -(BOOL)isConcurrent 
        - (BOOL)isExecuting
         //是否已经完成,这个必须要重载,不然放在放在NSOperationQueue里的NSOpertaion不能正常释放。
       - (BOOL)isFinished
       
       比如TestNSOperation:NSoperaion 重载上述的4个方法,
       声明一个NSOperationQueue, NSOperationQueue *queue = [[[NSOperationQueue alloc ] init] autorelease];
      [queue addOperation:testNSoperation];
      它会自动调用TestNSOperation里的 start函数,如果需要多个NSOperation,你需要设置queue的一些属性,如果多个NSOperation之间又依赖关系,也可以设置,具体可以参考API 文档。 
     
    (2)非并发执行
      -(void)main
       只需要重载这个main方法就可以了。 
    详细可以参考之前的:多线程的使用(1,2)
  • 相关阅读:
    支付宝API
    三级联动
    高精尖面试题(七)
    高精尖面试题(六)
    高精尖面试题(五)
    第十二章、使用继承
    第十章、使用数组
    第十一章、理解参数数组
    第九章、使用枚举和结构创建值类型
    第八章、理解值类型和引用
  • 原文地址:https://www.cnblogs.com/gaoxiao228/p/3190920.html
Copyright © 2011-2022 走看看