处理 NSOpertion 间依赖关系的一种方式
来源:互联网 发布:电脑mac是什么缩写 编辑:程序博客网 时间:2024/05/22 14:04
我们知道 NSOperationQueue 可以调度 NSOpertion 间的依赖,
虽然可以为 NSOperation 增加 Depends,
但是框架并没有提供方法,
让你可以直接判断依赖关系是否成立。
框架这么设计主要是考虑通用性,
Operation 执行的成功与否是业务相关的。
但是在实际应用中,只有 Opration 依赖的所有操作都执行成功了,
当前的 Operation 执行才有意义。
==============================================================
那么如何才能显式的达到这样的目标呢?
我们可以从 NSOperation 继承下来,对其进行扩展。
在成员变量中增加一个 NSMutableArray,
同时在成员变量中也增加一个 NSNumber(初始值为 NO),
并重写 addDepends,
假设我们继承下来的类叫:XXOperation,
XXOperation 的数组中存的是:XXOperation。
在 addDepends 时,首先调用基类方法,然后向数组中添加我们的XXOperation。
当 XXOperation 执行成功时,将 NSNumber 置为 YES。
当有所依赖的 XXOperation start 时,判断所有的依赖项是否执行成功。
==============================================================
Code Sample:
@interface XXOperation : NSOperation {
NSMutableArray *_xxDepends;
NSNumber *_exeResult;
}
@property (nonautomic, retain) NSMutableArray *xxDepends;
@property (nonautomic, retain) NSNumber *exeResult;
@end
==============================================================
以上只是一个想法,并没有在实际产品代码中应用。
- 处理 NSOpertion 间依赖关系的一种方式
- mybaties处理表与表的关系第一种方式(多表查询)
- 自动处理头文件的依赖关系
- 自动处理头文件的依赖关系
- 自动处理头文件的依赖关系
- 包依赖关系处理
- Eclipse自动插件依赖的一种配置解决方式
- 通过gradle下载最新依赖包的一种方式
- MINA2处理转发的一种解决方式
- <Android>超时处理的一种方式
- 一种几何匹配的改进处理方式
- Hadoop依赖jar包的处理方式
- Spring IoC Service Provicer 管理对象间的依赖关系的三种方式
- 关系型数据库存储树的一种方式
- spring依赖关系的管理和注入方式
- makefile 自动处理头文件的依赖关系
- Makefile基础---自动处理头文件的依赖关系
- Makefile基础 4. 自动处理头文件的依赖关系
- Inside the Objective-C Runtime
- Java解析xml文件四种方式
- Understanding the Objective-C Runtime
- 统一建模语言(UML)介绍
- MySQL server has gone away 问题的解决方法
- 处理 NSOpertion 间依赖关系的一种方式
- WordCount 实例分析
- iOS 应用的签名分两步
- android开发小总结
- 一个简单的带序列号输入的安装包
- android下判断一个应用app是否是系统rom集成的方法
- 删除字符串里的数字并压缩字符串
- 每天进步一点点-->critical section(临界资源)
- 关于为什么要使用脚本引擎与脚本的一点思考