public void ConnectionTimeoutTestWithThread() { int timeoutSec = 5; string connStrNotAvailable = $"Server=tcp:fakeServer,1433;uid=fakeuser;pwd=fakepwd;Connection Timeout={timeoutSec}"; List <ConnectionWorker> list = new List <ConnectionWorker>(); for (int i = 0; i < 10; ++i) { list.Add(new ConnectionWorker(connStrNotAvailable)); } ConnectionWorker.Start(); ConnectionWorker.Stop(); double theMax = 0; foreach (ConnectionWorker w in list) { if (theMax < w.MaxTimeElapsed) { theMax = w.MaxTimeElapsed; } } int threshold = (timeoutSec + 1) * 1000; Console.WriteLine($"ConnectionTimeoutTestWithThread: Elapsed Time {theMax} and threshold {threshold}"); }
public static void ConnectionTimeoutTestWithThread() { const int timeoutSec = 5; const int numOfTry = 2; const int numOfThreads = 5; SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(DataTestUtility.TCPConnectionString); builder.DataSource = "invalidhost"; builder.ConnectTimeout = timeoutSec; string connStrNotAvailable = builder.ConnectionString; for (int i = 0; i < numOfThreads; ++i) { new ConnectionWorker(connStrNotAvailable, numOfTry); } ConnectionWorker.Start(); ConnectionWorker.Stop(); double timeTotal = 0; double timeElapsed = 0; foreach (ConnectionWorker w in ConnectionWorker.WorkerList) { timeTotal += w.TimeElapsed; } timeElapsed = timeTotal / Convert.ToDouble(ConnectionWorker.WorkerList.Count); int threshold = timeoutSec * numOfTry * 2 * 1000; Assert.True(timeElapsed < threshold); }
public void StartBroadcast() { if (stop) { try { UdpConnection udpConnection = new UdpConnection(broadcastPort); broadcastWorker = new ConnectionWorker(udpConnection); broadcastWorker.Start(); stop = false; StartCoroutine(ListenReceive()); } catch (Exception e) { GUITextDebug.debug(e.Message + "\n" + e.StackTrace); } } }