JVM内からPOSIXシグナルを送信するにはどうすればよいですか?(JavaまたはClojureの場合)
グーグルで試してみるまで、これが問題になるとは思っていませんでした。信号の処理に関する情報はたくさんありますが、信号の送信については何もありません。
JNIを使用するか、シェルを呼び出して「kill」を実行する以外に、PIDにシグナルを送信する他の方法はありますか?
JVM内からPOSIXシグナルを送信するにはどうすればよいですか?(JavaまたはClojureの場合)
グーグルで試してみるまで、これが問題になるとは思っていませんでした。信号の処理に関する情報はたくさんありますが、信号の送信については何もありません。
JNIを使用するか、シェルを呼び出して「kill」を実行する以外に、PIDにシグナルを送信する他の方法はありますか?
Ok。自分自身に答える:提案されたライブラリを調べましたが、特にその一部のみを使用する場合は、多くのコードに新しい依存関係を導入することに注意しています。
最も簡単な方法は、JNAを使用し、システム(libc)APIとインターフェースすることです。clojureでは、これは次のようになります。
(jna-Integer kill pid signoを呼び出します)
もちろん(:use net.n01se.clojure-jna)を実行した後。
このソフトウェアはWindowsでの実行を目的としていないため、すべてのPOSIXシステムで動作するこのソリューションで問題ありません(MacOSとLinuxが私が興味を持っているものです)。