Beendung Thread

newmem

Grünschnabel
Hallo,

ich möchte einen laufenden Thread mit einer bestimmten Tastenkombination (z.B. Strg + C)
beenden. Wie mache ich das am besten? Da es keine GUI-Anwendung sein soll, kann ich das schonmal nicht mit einem keyEvent machen? Oder?
 
Ohne GUI-Anwendung ist schlecht CTRL+C ansprechbar.

Wenn Du per Kommandozeile arbeitest, könntest Du "System.in" abfangen.

Prinzipiell kannst Du "althergekommen" den Thread mit stop() beenden - keine gute Lösung.

Besser so:

Code:
public class StopThread extends Thread {
 
private boolean bCancel = false;
 
public void cancel() {
  bCancel = true;
}
 
public void run() {
  for (;;) {
 
	//tue irgendwas
 
	if (bCancel) break;
  }
}
 
}
 
Zurück