title: GCDAsyncSocket multiple connections wont accept data from multiple sockets
body: <p>I am trying to write an app that connects to multiple sockets at the same time, i'm having trouble with receiving data from the old socket when a new one is connected. </p>
  
  <p>The main thing is the delegate is not activated by the previously connected socket.</p>
  
  <p>This is my overall program </p>
  
  <pre><code>var struct = [serverlist]() //Create array for sockets and serverinfo
  
  func connect() {
      //Init socket 
      struct[item].socket = GCDAsyncSocket(delegate: self, delegateQueue: dispatch_get_main_queue())
      //Create error message
      var connectionError: NSError?
      //connect socket
      struct[item].socket!.connectToHost(struct[item].Serveraddress, onPort: struct[item].serverport, error: &amp;connectionError)
  }
  
  func socket(socket : GCDAsyncSocket, didReadData data:NSData, withTag tag:Int32)
  {
        //Do stuff like print data
  }
  </code></pre>
  
  <p>This is my structure to store the sockets </p>
  
  <pre><code>struct serverlist 
  { 
      var Serveraddress = String(); 
      var socket = GCDAsyncSocket?(); 
  }
  </code></pre>
  
  <p>NOTE
  I have checked that both sockets are still connected to different ip addresses with the code below.</p>
  
  <pre><code>println(Liststucture[x].socket?.isDisconnected) 
  println(Liststucture[x].socket?.connectedHost) 
  </code></pre>