jjzjj

NSOperation

全部标签

ios - 在 Swift 3 中使用操作类覆盖默认值

作为从2.2的转换过程的一部分,我试图用Swift3中的Operation类覆盖一些值,但我遇到了覆盖类属性的问题。这是在Swift2.2中正常工作的代码的简化版本:classViewController:UIViewController{lazyvaroperationQueue:NSOperationQueue={letqueue=NSOperationQueue()queue.maxConcurrentOperationCount=1returnqueue}()overridefuncviewDidLoad(){super.viewDidLoad()callOperation()

ios - Apple 的 Advanced NSOperations 示例代码中的竞争条件

TL:DR.Completed状态何时设置在NSURLSessionTask上,它如何依赖/影响同一任务的completionHandler?有没有办法确保.Completed状态只在completionHandler完成执行后设置?问题这里的另一个问题...ChainingmultipleasyncfunctionsinSwift我被指向高级NSOperations的方向WWDCTalk和SampleCode.在将部分代码复制到我自己的项目中后,我发现我似乎遇到了一个竞争条件,它有时会工作,有时会失败,具体取决于竞争条件的执行方式。我创建的操作几乎是示例代码中DownloadEart

swift - 取消包裹在 NSOperation 中的 Alamofire 请求会导致多个 KVO?

我的Xcode版本:6.3.2Alamofire版本:1.2.2(通过Cocoapods安装)为了设置maxConcurrentOperationCount以限制NSOperationQueue中的并发操作数,我将Alamofire包装起来NSOperation中的下载请求只是likeRobsuggested.NSOperation的基本子类如下:classConcurrentOperation:NSOperation{overridevarconcurrent:Bool{returntrue}overridevarasynchronous:Bool{returntrue}privat

swift - 如何在 Swift 中子类化 NSOperation 以将 SKAction 对象排队以进行串行执行?

Rob提供agreatObjective-Csolution用于子类化NSOperation以实现SKAction对象的串行排队机制。我在自己的Swift项目中成功实现了这一点。importSpriteKitclassActionOperation:NSOperation{let_node:SKNode//Thespritenodeonwhichanactionistobeperformedlet_action:SKAction//Theactiontoperformonthespritenodevar_finished=false//Ourread-writemirrorofthes

ios - NSOperation 没有在后台线程中发生

我创建了一个NSOperation子类来处理一些zip存档操作。无论如何,如果我重写-start或-main这段代码总是会发生:if([NSThreadisMainThread]){NSLog(@"Iaminthemainthread");return;}知道发生了什么吗?我试过添加这个block:-(void)start{//alsotriedoverridingmainif([NSThreadisMainThread]){NSLog(@"Inmainthread,tryingagain");dispatch_async(dispatch_get_global_queue(DISPA

ios - NSOperation 没有在后台线程中发生

我创建了一个NSOperation子类来处理一些zip存档操作。无论如何,如果我重写-start或-main这段代码总是会发生:if([NSThreadisMainThread]){NSLog(@"Iaminthemainthread");return;}知道发生了什么吗?我试过添加这个block:-(void)start{//alsotriedoverridingmainif([NSThreadisMainThread]){NSLog(@"Inmainthread,tryingagain");dispatch_async(dispatch_get_global_queue(DISPA

ios - 用 NSURLSession 替换 NSURLConnection

我一直在着手为NetworkCommunication设计。我有一个设计,其中NSOperation子类创建和管理它们自己的NSURLConnection。NSOperation子类由NetworkManger类实例化,该类将其添加到NSOperationQueue。请求完成后,委托(delegate)(例如:ViewController将被调用)。这是流程:网络管理器实例化NSOperation子类(封装URL、参数等)并将其添加到它维护的NSOperationQueue中。NSOperation子类实例化NSURLConnection(执行异步请求并检索数据)NSURLConnec

ios - 用 NSURLSession 替换 NSURLConnection

我一直在着手为NetworkCommunication设计。我有一个设计,其中NSOperation子类创建和管理它们自己的NSURLConnection。NSOperation子类由NetworkManger类实例化,该类将其添加到NSOperationQueue。请求完成后,委托(delegate)(例如:ViewController将被调用)。这是流程:网络管理器实例化NSOperation子类(封装URL、参数等)并将其添加到它维护的NSOperationQueue中。NSOperation子类实例化NSURLConnection(执行异步请求并检索数据)NSURLConnec

iphone - iOS - 如何知道 NSOperationQueue 何时完成处理一些操作?

我需要在我的应用程序中下载目录及其内容。所以我决定实现一个NSOperationQueue并将NSOperation子类化以实现NSURLRequest等......问题是我一次添加了所有操作,但我无法确定何时下载一个目录的所有文件以更新UI并启用该特定目录。现在我必须等待所有目录中的所有文件都下载完毕才能更新UI。我已经为NSOperationQueue的operationCount和NSOperation的isFinished实现了键值观察,但我不知道目录何时包含所有文件!你有什么想法吗?非常感谢 最佳答案 添加一个“完成”NS

iphone - iOS - 如何知道 NSOperationQueue 何时完成处理一些操作?

我需要在我的应用程序中下载目录及其内容。所以我决定实现一个NSOperationQueue并将NSOperation子类化以实现NSURLRequest等......问题是我一次添加了所有操作,但我无法确定何时下载一个目录的所有文件以更新UI并启用该特定目录。现在我必须等待所有目录中的所有文件都下载完毕才能更新UI。我已经为NSOperationQueue的operationCount和NSOperation的isFinished实现了键值观察,但我不知道目录何时包含所有文件!你有什么想法吗?非常感谢 最佳答案 添加一个“完成”NS