チャットボットを書こうとしています。私はまだ初心者ですが、1つ質問があります。
Process proc = Runtime.getRuntime().exec("notepad.exe");
これにより、メモ帳を終了しない限り、実際にプログラムを終了できなくなります。このメモ帳が終了する前に Java プログラムを終了することはできますか?
チャットボットを書こうとしています。私はまだ初心者ですが、1つ質問があります。
Process proc = Runtime.getRuntime().exec("notepad.exe");
これにより、メモ帳を終了しない限り、実際にプログラムを終了できなくなります。このメモ帳が終了する前に Java プログラムを終了することはできますか?
プログラム内の別のスレッドを介して外部プログラムを実行し、メイン スレッドでプログラム ロジックを継続することができます。つまり、マルチスレッドアプリケーションは優れたソリューションです。
最初にサブプロセスを破棄します:
Process proc = Runtime.getRuntime().exec("notepad.exe");
proc.destroy();
これが機能しない場合は、プロセスのプロセス ID を取得し、別のサブプロセスを実行して実行しますkill <pid>
System.exit(0);
次に、または通常どおりJava を終了します。