private void tryConnect(STCSession session) { for (int i = 0; i < 5; i++) { Stopwatch sw = Stopwatch.StartNew(); addMessage(">>Connecting to " + session.User.Name); connected = false; Initiator.Start(session); while (!connected && sw.ElapsedMilliseconds < 5000) { Thread.Sleep(100); } if (connected) { break; } addMessage(">>Connection to " + session.User.Name + " timed out. Retrying."); Initiator.Stop(); } if (!connected) { addMessage(">>Connection to " + session.User.Name + " failed miserably."); } }