我有一个网络服务,我用它来将图像上传到服务器。我在 NSOperation
中使用该服务。当我同步调用服务的方法时,一切正常,但是当我异步调用方法时,Web 服务器永远不会收到请求。我能想到发生这种情况的唯一原因是线程被杀死,即使在 Web 服务异步调用内部有一个循环使当前运行循环保持事件状态直到收到响应。
最佳答案
查看NSOperation
的文档,您将了解如何实现并发NSOperations
。简而言之,不是实现 main
,而是实现 start
、isConcurrent
、isExecuting
和 isFinished
。所以通常你会为 isConcurrent
返回 YES
,在 start
方法中启动你的请求并将 isExecuting
设置为 YES,当您的请求完成时,将 isFinished
设置为 YES。有关更多详细信息,请参阅官方 Apple NSOperation 类文档。
关于ios - NSOperation 内部的异步操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12635540/