Iphone 如何从异步请求接收对单例的响应?

Iphone 如何从异步请求接收对单例的响应?,iphone,cocoa,cocoa-touch,singleton,Iphone,Cocoa,Cocoa Touch,Singleton,下面是一个iPhone应用程序 我想使用单例来处理异步URL请求。我已经涵盖了这一点,但是什么是最好的编码实践方式来告诉单身汉在收到响应时将其发送到哪里?我需要将响应返回到最初称为singleton的类 我能否将一个指向调用类的指针以及(调用类的)委托方法传递给singleton,以便在收到响应时调用 谢谢首先,单例通常是一个糟糕的设计,这看起来就像你不需要单例的情况。Miško Hevery和他的博客上的其他文章。(我希望这不会显得傲慢,摆脱单例可能会使您的设计更好,编码更容易。) 第二,如果

下面是一个iPhone应用程序

我想使用单例来处理异步URL请求。我已经涵盖了这一点,但是什么是最好的编码实践方式来告诉单身汉在收到响应时将其发送到哪里?我需要将响应返回到最初称为singleton的类

我能否将一个指向调用类的指针以及(调用类的)委托方法传递给singleton,以便在收到响应时调用


谢谢

首先,单例通常是一个糟糕的设计,这看起来就像你不需要单例的情况。Miško Hevery和他的博客上的其他文章。(我希望这不会显得傲慢,摆脱单例可能会使您的设计更好,编码更容易。)

第二,如果我正确理解了您的问题,您可以向singleton传递一个选择器,该选择器应在singleton收到数据后调用。singleton类中的API可能如下所示:

- (void) download: (NSURLRequest*) request andTell: (id) delegate to: (SEL) doThis;
然后,在完成数据加载后,您将执行以下操作:

[delegate performSelector:doThis withObject:receivedData];

这是否回答了问题?

您是否也可以编写一些代码片段,说明如何调用异步URL请求?正如我所知,您总是可以传递一个接收委托方法的用户参数。