这是一个创建于 3552 天前的主题,其中的信息可能已经有所发展或是发生改变。
WWDC讲到了一个 NSOperation 依赖关系的例子:
WWDC app 设计中,如果用户点击 favorite,这个 favorite operation 会让自己依赖一个 login operation,检查用户是否已登录 WWDC。
操作步骤是:
1. 此时用户并没有登录 WWDC
2. 用户点击 favorite,这个 favorite operation 依赖了一个 login operation
3. login operation 会先执行,app 会 present 一个 login view controller
4. 用户决定 不login,点击了 cancel 按钮,这个 login view controller 会 dismiss
那么问题来了:
1. login operation 在步骤4执行后,finished 是 YES, cancelled 也是 YES,对不对?
2. 既然 login operation 已经被标记为 YES,那 favourite operation 会执行?可是因为用户选择了 cancel,此时 favourite operation 不应该执行才对,怎么办?
2 条回复 • 2015-07-10 16:11:11 +08:00
 |
|
1
meepoli 2015-07-10 10:03:55 +08:00
那么我建议 1. 你看一看 NSOperation的文档 2. 再看一看 Concurrent Programming Guide 官方白皮书
|
 |
|
2
110293734 2015-07-10 16:11:11 +08:00
曾经看到过 operation依赖关系这一块,不过忘记了。
自己大多数开发过程中,都是手动控制+判断条件 来控制operation
|