# C# Thread neustarten



## thysol (2. Dezember 2010)

Hallo PCGH Community,
In C# moechte ich einen Thread nochmal ausfuehren:

if (-----------)
        {
            z = -----;
                s = -----;
            sw.Start();

            t.Start(); // Erster Thread

            for (int i = 0; i < cores; i++) // Andere Threads
            {
                threads_.Start(w);
            }
            for (int i = 0; i < cores; i++)
            {
                threads.Join();
            }

Allerdings bekomme ich dann den Error waehrend des Ausfuehrens, "Thread is running or terminated; it cannot restart". Den Error bekomme ich fuer alle threads die ich nochmal ausfuehren will. Der Compiler zeigt keine Errors an, nur der Debugger waehrend des Ausfuehrens. Wie kann ich die Threads ohne den Fehler nochmal ausfuehren?

Ich bedanke mich schon mal im Vorraus fuer die Antworten._


----------



## Skysnake (2. Dezember 2010)

Ich programmier kein C# aber würd rein gefühlsmäßig sagen, du musst den Thread erst von Hand abschiesen bevor du ihn neu starten kannst.


----------



## bingo88 (2. Dezember 2010)

Ein einmal beendeter Thread (sprich: run ist durch) kann nicht erneut gestartet werden. Du musst ein neues Thread-Objekt erzeugen. Das kenne ich aber auch nicht anders, ehrlich gesagt 

Ich weiß ja nicht wie es mit deinem Proggi sonst so aussieht, evtl. reicht es aber auch die erste for-Schleife bei 1 beginnen zu lassen...


----------



## thysol (2. Dezember 2010)

Ich starte dann einfach einen komplett neuen Thread. Danke fuer die Hilfe.


----------

