理论上,JDB(Java 调试器)允许杀死单个线程。在实践中,有可能吗?在这里,我将 jdb 附加到我的 JVM,它在端口 8000 上有一个 agentlib:
$ 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 中创建一个新的 Exception,将其交给线程而死?