2016-04-15 7 views
0

Ich fange an, über Thread zu lernen, die ich mit Erfolg verwende, aber ich kann Thread Programm nicht erfolgreich beenden.Wie Thread-Tcp-Verbindung abzubrechen

Bitte helfen, wie kann ich abbrechen?

for (int i = 0; i < dtProd.Rows.Count; i++) 
      { 
       sayacno = dtProd.Rows[i].ItemArray[2].ToString(); 
       komut = "<25></25>"; 
       Connection TCP = new Connection("as","sd","fd","gd"); 
       Thread t = new Thread(new ThreadStart(TCP.Bagla)); 
       t.IsBackground = true; 
       t.Start(); 
       threads.Add(t); 
       Thread.Sleep(100); 
      } 

      for (int t = 0; t < threads.Count; t++) 
      { 
       try 
       { 
        threads[t].Join(); 
        threads[t].Abort(); 
       } 
       catch (ThreadAbortException tx) 
       { 
        Console.Write(tx.ToString()); 
       }    
      } 
+2

'Threads [t] .join();' das aufrufende Thread dazu führen, blockiere solange, bis 'threads [t]' thread beendet ist. Ich würde nicht erwarten, dass es jemals zur Abort-Linie kommt. – Amy

Antwort

0

Ich glaube, Sie haben die Änderung unter Anrufe von:

threads[t].Join(); 
    threads[t].Abort(); 

zu:

threads[t].Abort(); 
    threads[t].Join(); 
Verwandte Themen