关于 NSOperation 依赖关系的疑问

2015-07-09 23:12:10 +08:00
 georgetso
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 不应该执行才对,怎么办?
2232 次点击
所在节点    iDev
2 条回复
meepoli
2015-07-10 10:03:55 +08:00
那么我建议
1. 你看一看 NSOperation的文档
2. 再看一看 Concurrent Programming Guide 官方白皮书
110293734
2015-07-10 16:11:11 +08:00
曾经看到过 operation依赖关系这一块,不过忘记了。

自己大多数开发过程中,都是手动控制+判断条件 来控制operation

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/204602

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX