exec()呼び出しを介してプロセスを作成したばかりで、現在は.waitFor()メソッドを使用しています。InterruptedExceptionをキャッチする必要がありますが、catchコードブロックに何を配置すべきかわかりません。終了コードを受け取りたいのですが、現在のスレッドが中断された場合は受け取りません。スレッドが中断された場合に終了コードをプロセスから除外するにはどうすればよいですか?
例:
import java.io.IOException;
public class Exectest {
public static void main(String args[]){
int exitval;
try {
Process p = Runtime.getRuntime().exec("ls -la ~/");
exitval = p.waitFor();
System.out.println(exitval);
} catch (IOException e) {
//Call failed, notify user.
} catch (InterruptedException e) {
//waitFor() didn't complete. I still want to get the exit val.
e.printStackTrace();
}
}
}