【发布时间】:2011-05-27 20:43:33
【问题描述】:
在一个 iOS 应用程序中,我正在编写一个将收到消息的类,去做一个后台请求(通过performSelectorInBackground:withObject:),然后通过委托方法返回结果(然后将显示在地图上) .当一次发生一个请求时,一切似乎都正常,但我试图弄清楚如何处理多个重叠请求。例如,如果用户在启动后台线程的搜索框中输入了一些内容,然后在初始后台线程完成之前输入了其他内容,应该如何处理?
有几个选项(不要让第二个请求在第一个请求正在进行时开始,一旦请求第二个请求就停止第一个请求,让两者同时运行并返回独立的结果等),但是有一个常见的/推荐的方法来处理这个?
【问题讨论】:
-
我应该更详细地阅读它(顺便说一下,您评论中的链接是错误的)。但我的问题更多是关于如何处理这种特殊情况,而不是使用调度队列、
NSOperations 等实际实现它的细节。 -
哎呀,这里是the correct link。
标签: objective-c multithreading ios background thread-safety