Guten Morgen,
ich hab ein Problem, ich kann einen Thread nicht stoppen..
Vielleicht kann mir jemand helfen?
Ausgangslage:
und die zweite Klasse ThreadTest:
Nun, meine Mainklasse erstellt einen neuen Thread, übergibt diesem Parameter über den Konstruktor... In diesen parametern ist eine Zählvariable, die besagt wie oft der übergebenen name ausgegeben werden soll..
Mir ist klar, dass ich keine endlosschleife in der run() methode habe, somit der Thread ended, wenn diese beendet ist.
Jedoch möchte ich nun den Thread über die Main methode vorzeitig beenden, das heisst noch während der Thread damit beschäftigt ist den namen auszugeben...
Hat jemand einen vorschlag wie man das realisieren könnte? thread.stop() soll ja nicht mehr benutzt werden..
Vielen Dank für Eure Hilfe!
Grüsse
Jim
ich hab ein Problem, ich kann einen Thread nicht stoppen..

Ausgangslage:
Code:
public class main {
private thread t1 = null;
public void startThread(int c, String name) {
if (t1 == null) {
t1 = new ThreadTest(c, name);
t1.start();
}
}
}
und die zweite Klasse ThreadTest:
Code:
public class ThreadTest {
private int counter;
private string name;
public ThreadTest(int c, String n) {
counter = c;
name = n;
}
public void run() {
runner(counter, name);
}
public void runner(int c, string n) {
for (int i = 0; i < c; i++) {
System.out.println(n);
}
}
}
Nun, meine Mainklasse erstellt einen neuen Thread, übergibt diesem Parameter über den Konstruktor... In diesen parametern ist eine Zählvariable, die besagt wie oft der übergebenen name ausgegeben werden soll..
Mir ist klar, dass ich keine endlosschleife in der run() methode habe, somit der Thread ended, wenn diese beendet ist.
Jedoch möchte ich nun den Thread über die Main methode vorzeitig beenden, das heisst noch während der Thread damit beschäftigt ist den namen auszugeben...
Hat jemand einen vorschlag wie man das realisieren könnte? thread.stop() soll ja nicht mehr benutzt werden..
Vielen Dank für Eure Hilfe!
Grüsse
Jim