Heyho,
ich habe eine technische Frage zu folgendem Code:
Wenn ich das Programm ausführe, wird ja der Thread "MyThread" gestartet, während der Main-Thread sofort wieder beendet ist.
Gibt es bei einem solchen Konstrukt irgendwelche Besonderheiten zu beachten, die dazu führen könnten, dass der Thread "MyThread" beendet wird, während das restliche Programm ganz normal weiter läuft?
Das Problem ist nämlich, dass bei meinem etwas komplexeren Programm hin und wieder sowas passiert, jedoch laut Log keinerlei Exceptions geworfen werden, daher bin ich etwas ratlos, wie es passieren kann, dass dieser Thread auf einmal nicht mehr läuft.
Könnt ihr mir vielleicht eine Software empfehlen, mit der ich sowas gezielt monitoren kann und genau ein solches Vorkommnis loggen könnte? Benutze z.Zt den Yourkit Java Profiler werd nachher mal schauen, ob ich damit was aufspüren kann
ich habe eine technische Frage zu folgendem Code:
Java:
public class Foo implements Runnable{
static Foo instance = new Foo();
public Foo(){
Thread runner = new Thread(this, "MyThread");
runner.start();
}
@Override
public void run() {
while(true){
System.out.println("Thread Hello");
try {
Thread.sleep(800);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public static void main(String a[]){
}
}
Gibt es bei einem solchen Konstrukt irgendwelche Besonderheiten zu beachten, die dazu führen könnten, dass der Thread "MyThread" beendet wird, während das restliche Programm ganz normal weiter läuft?
Das Problem ist nämlich, dass bei meinem etwas komplexeren Programm hin und wieder sowas passiert, jedoch laut Log keinerlei Exceptions geworfen werden, daher bin ich etwas ratlos, wie es passieren kann, dass dieser Thread auf einmal nicht mehr läuft.
Könnt ihr mir vielleicht eine Software empfehlen, mit der ich sowas gezielt monitoren kann und genau ein solches Vorkommnis loggen könnte? Benutze z.Zt den Yourkit Java Profiler werd nachher mal schauen, ob ich damit was aufspüren kann