每次我的应用启动或重新启动时,我都会创建一个NSOperation。我需要用依赖关系对它们进行排队,这样两个永远不会同时执行,而是一个接一个地执行。
这样做是否安全?
-isFinished
。 我在这里关注多线程问题。 -isFinished或-addDependency:方法的文档并未说明不应从主线程调用它们。所以我想这样做是可以的。
编辑:NSOperation在后台执行一些文件系统操作。
答案 0 :(得分:1)
如果您想确保不会同时调用它们,请将NSOperationQueue上的maximumConcurrentOperationCount:设置为1.
- (void)setMaxConcurrentOperationCount:(NSInteger)count
这假设您将两个NSOperations放在同一个队列中。
回答您的其他问题。我不确定你在做什么 - 但是如果你愿意,你可以坚持在AppDelegate上强烈引用你的NSOperation,你可以检查isFinished