Hallo,
folgender Code soll mein Programm beenden:
Funktioniert auch beim normalen beenden. Aber wenn ich Windows herunterfahre oder mich abmelde läuft das Programm weiter und reagiert nicht mehr. Was mache ich falsch?
folgender Code soll mein Programm beenden:
Java:
import java.awt.*;
import java.awt.event.*;
public class Shutdown extends Frame implements WindowListener{
private Thread mainthread;
public Shutdown(){
super();
setVisible(true);
setSize(100,100);
mainthread = Thread.currentThread();
addWindowListener(this);
}
public void windowClosing(WindowEvent e){
Test.running = false;
removeWindowListener(this);
try{mainthread.join(5000);}//wait for main thread
catch(InterruptedException ex){}
dispose();
System.exit(0);
}
public void windowDeactivated(WindowEvent e) {}
public void windowActivated(WindowEvent e) {}
public void windowClosed(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
public void windowOpened(WindowEvent e) {}
}
Funktioniert auch beim normalen beenden. Aber wenn ich Windows herunterfahre oder mich abmelde läuft das Programm weiter und reagiert nicht mehr. Was mache ich falsch?