【Java】Threadの割り込みについて
java.lang.Threadで、別スレッドでタイマーを起動して、
メインスレッドが停止するか、タイマースレッドが規定時間を過ぎたタイミングでプロセスを終了したいのですが、
仕様を見ると、”休止中のスレッドに対する割り込み”(interrupt)しか見当たらないので、常時走っているメインスレッドへの割り込みは、不可能ということになるんでしょうか?
イメージとしては、実行クラスで
try {
final Thread main = Thread.currentThread();
Thread timer = new Thread() {
@Override
public void run() {
try {
Thread.sleep(1000 * 60 * 60 * 24);
catch (Exception e) {
}
main.interrupt();
}
}
timer.setDaemon(true);
timer.run();
} catch (InterruptedException e) {
System.exit();
}
みたいなことをしたいです。