我有一个Web服务,我用它来将图像上传到服务器。我在NSOperation
内使用该服务。当我同步调用服务方法时,一切正常,但是当我异步调用方法时,Web服务器永远不会收到请求。我能想到这种情况的唯一原因是线程被杀了,即使在Web服务异步调用中存在循环,它会使当前的runloop保持活动状态,直到收到响应为止。
答案 0 :(得分:2)
查看NSOperation
的文档,您将了解如何实现并发NSOperations
。简而言之,您不是实施main
,而是实施start
,isConcurrent
,isExecuting
和isFinished
。通常,您会为YES
返回isConcurrent
,在start
方法中启动您的请求并将isExecuting
设置为YES,并在您的请求完成时将isFinished
设置为是。有关更多详细信息,请参阅Apple NSOperation官方类文档。