internal void ConnectToPeer(TorrentManager manager, Peer peer) { // Connect to the peer. IConnection connection = ConnectionFactory.Create(peer.ConnectionUri); if (connection == null) { return; } peer.LastConnectionAttempt = DateTime.Now; AsyncConnectState c = new AsyncConnectState(manager, peer, connection); pendingConnects.Add(c); manager.Peers.ConnectingToPeers.Add(peer); NetworkIO.EnqueueConnect(connection, endCreateConnectionCallback, c); }