理論的には、JDB (Java デバッガー) では 1 つのスレッドを強制終了できます。実際には、それは可能ですか?ここでは、ポート 8000 に agentlib がある JVM に jdb を接続します。
$ jdb -attach 8000
>
スレッドをリストします。
> threads
Group system:
(java.lang ...
[...]
問題のスレッドを見つけて、それを強制終了しようとします。
> kill 0x21bb new java.lang.Exception("die!")
killing thead: pool-766-thread-1
> com.sun.tools.example.debug.expr.ParseException: Unable to create java.lang.Exception instance
Expression must evaluate to an object
では、スレッドを強制終了することはできませんか?
jdb で新しい例外を作成し、それをスレッドに渡して終了させるにはどうすればよいでしょうか?