ホームページ  >  記事  >  Java  >  Java CLI アプリケーションで Ctrl C をインターセプトするにはどうすればよいですか?

Java CLI アプリケーションで Ctrl C をインターセプトするにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-25 10:28:31171ブラウズ

How can I intercept Ctrl C in a Java CLI application?

Java CLI アプリケーションでの Ctrl C のインターセプト

プログラマは、CLI アプリケーション内で Ctrl C キーストロークをインターセプトしようとすることがよくあります。このアクションは通常、プロセスの終了に関連付けられており、アプリケーションの正常なシャットダウンやその他のカスタム動作を実装する場合に役立ちます。

マルチプラットフォーム ソリューション

残念ながら、標準化されたソリューションが見つかりませんでした。異なるオペレーティング システムにまたがるソリューションは困難であることが判明しています。ただし、利用可能なプラットフォーム固有のアプローチがあります:

Unix 系システム:

SignalHandler を使用して、Ctrl C によって生成された SIGINT シグナルをキャプチャします。リンクされた記事 (

Windows:

Runtime.getRuntime().addShutdownHook() メソッドを使用します。このアプローチにより、JVM が完全に終了する前にカスタム コードを実行できます。

コンソールの readLine() を使用する

コンソールの readLine() メソッドを使用して文字を読み取ることもできます。標準入力からの入力では、Ctrl C をインターセプトする機能がありません。キーストロークをインターセプトするには、専用のライブラリまたは低レベルのシステム依存メカニズムの使用を検討してください。

以上がJava CLI アプリケーションで Ctrl C をインターセプトするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。