10 Stimmen

Wie erstelle ich einen Hintergrundthread?

Der Thread, der vom folgenden erstellt wird, ist der Vordergrund-Thread

  Thread workingThread = new Thread(new ParameterizedThreadStart(DoJob));

Kann ich den erstellten Thread hintergrundfähig machen?

1 Stimmen

Du solltest deiner Frage einen passenden Titel geben, z.B. "Wie erstelle ich einen Hintergrund-Thread?", denn das könnte andere Programmierer mit deiner vorherigen Frage verwirren. stackoverflow.com/questions/4161133/…

19voto

Ani Punkte 107342

Ja, das kannst du; System.Threading.Thread hat eine IsBackground Eigenschaft.

Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob ein Thread ein Hintergrundthread ist oder nicht.

Thread workingThread = new Thread(new ParameterizedThreadStart(DoJob))
                                 { IsBackground = true };

15voto

mareon Punkte 121

Ich weiß, dass dies ein älterer Thread ist, aber die praktischste Lösung, wie man einen neuen Thread erstellt, ist folgende:

 new Thread(() => NameOfYourMethod()) { IsBackground = true }.Start();

Wenn Sie einen parametrisierten Thread erstellen müssen, machen Sie einfach eine einfache Änderung:

 new Thread(() => NameOfYourMethod(param1, param2...)) { IsBackground = true }.Start();

Und das war's, ich hoffe, es hilft jemandem :)

*<em>Verwenden Sie dies nur, wenn Sie Threads aus irgendeinem Grund nicht speichern müssen.</em>

3voto

Saif Khan Punkte 17922

Versuchen

workingThread.IsBackGround = true;

1voto

Berryl Punkte 12046

Versuche diesen Code:-

    Thread.IsBackground = true

1voto

bbosak Punkte 5203
new Thread(new ParameterizedThreadStart(DoJob)) { IsBackground = true };

Sollte IsBackground sein, nicht IsBackGround

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X