実稼働環境では、特定のコードが無限ループに陥るという特定の状況があります。原因は主にデータ固有であり、真の原因を特定することはできません。それまでの間、私が望んでいるのは、そのコードを実行するために別の子スレッドを生成することです。たとえば、30秒以上実行される場合は、その子スレッドの実行を停止します。
Thread t = new Thread() {
public void run() {
// This is where i will the method that runs in a infinite loop
callMethodThatRunsInInfiniteLoop();
};
};
t.start();
try {
t.join(2000); // wait 2s
} catch (InterruptedException e) {
e.printStackTrace();
}
// if not completed how to break the child thread ???