使用NSStream中的套接字同时连接到多个服务器

时间:2015-05-08 13:36:38

标签: ios objective-c sockets nsstream

我正在使用Objective-C创建一个基于套接字的iOS应用程序,现在我的要求是同时连接到两个服务器。

我正在使用NSInputStreamNSOutputStream,我可以连接到第一台服务器,也可以使用委托方法与服务器发送和接收数据。

- (void)stream:(NSStream *)theStream handleEvent:(NSStreamEvent)streamEvent

如何同时连接第二台服务器或同时连接多台服务器?

1 个答案:

答案 0 :(得分:1)

您有两个选择,您通常会创建实现

的类的多个实例

- (void)stream:(NSStream *)theStream handleEvent:(NSStreamEvent)streamEvent

例如,您可以拥有自己的CustomConnection类,其中init方法如下:

- (id)initWithUrl:(NSURL *)url

但是你也可以做(如果你想把所有东西放在一个地方)只测试发送给你的NSStream:

- (void)stream:(NSStream *)theStream handleEvent:(NSStreamEvent)streamEvent
{
   if(theStream == self.serverAInputStream)
   {
      //input from server a
   }
   if(theStream == self.serverBInputStream)
   // ... and so on!
}