首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解NSBlockOperation

理解NSBlockOperation
EN

Stack Overflow用户
提问于 2014-07-25 23:58:02
回答 2查看 1.1K关注 0票数 3

我要进入NSBlockOperation,我有一些问题。值得注意的是,文档 for addExecutionBlock说:

讨论 指定的块不应对其执行环境作出任何假设。 在接收方执行或已经完成时调用此方法将引发NSInvalidArgumentException异常。

什么样的情况会抛出NSInvalidArgumentException?什么是真正的“当接收者正在执行”的意思?是什么导致了这一切?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-26 00:00:21

在操作正在运行或已经完成时,不能使用addExecutionBlock:添加执行块。这就是所有的意义。

票数 3
EN

Stack Overflow用户

发布于 2014-07-26 02:11:00

块操作对象可以具有与其关联的零个或多个执行块。当块操作启动时,所有关联的执行块都被提交给并发执行。警告是,在此之后不能向操作添加更多的执行块。

您可以创建更多的块操作对象并将执行块添加到这些对象中。每个块操作都是独立启动的,因此添加更多执行块的规则是单独计算的。

通常,您将创建块操作,向其添加任何您想要的执行块,然后将操作排队到操作队列上。一旦操作排队,它可能在任何时候开始(取决于就绪,这取决于依赖)。因此,最好不要尝试在排队之后添加执行块。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24966131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档