繁体   English   中英

如何管理多个异步NSURLConnection委托?

[英]how to manage multiple asynchronous NSURLConnection delegates?

我有一个建立多个异步连接的类,其中每个连接在委托方法中执行自己的逻辑。

因为委托是类本身,所以如何在NSURLConnection委托方法中实现这种分离?

我的投票是为正在执行的每个操作创建一个不同的类。 听起来可能需要做更多的工作,但是您的代码将变得更加整洁,这可能会减少错误。

2014年3月编辑-不要使用委托方法,请使用块。

在我看来,您需要按照对象方向更好地表示对象。

您应该有一个可以管理多个类的类,每个类都管理自己的URL连接。

根据保存的值检查传入的NSURLConnection中的值,以查看哪个连接负责。 或使委托具有不同的对象; 或使回调以通用方式运行。

我遇到了这样的问题。 我有一堂课,做同样的事情。 我通过将每个NSURLConnection对象存储在以其hash作为键的可变字典实例var中来解决此问题。 然后,我在类中添加了cancelAllConnections方法,并在每个视图控制器的viewDidUnload方法中调用它。 该方法删除可变字典中的所有连接对象。 然后,我在NSURLConnection的connectionDidFinishLoading添加了一个检查,以检查可变字典中的哈希键。 如果哈希值不存在,则表示连接已取消,并且不会对垃圾对象执行回调选择器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM