有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java是检查谁在使用线程的好方法。interrupted()和不抛出InterruptedException?

我有一个大线程,我需要使中断。这个线程使用第三方代码,我无法访问它们的源代码。在所有这些代码的某个地方,似乎有人在调用Thread.interrupted()而没有抛出异常。我需要一个好方法来确定谁在做这件事

我尝试在Thread.interrupted()设置断点,但是NetBean的条件断点工作得不好。即使条件不等于true,它们也会在随机线程中停止。这是我的断点条件:

currentThread().getName().contains("Name of my Thread") == true && currentThread().isInterrupted(false) == true

。。。然而,即使这些条件中没有一个得到满足,调试器也会在断点处停止。我猜它会因为currentThread()的调用而变得混乱

额外信息:

  • 我用的是Java 8
  • 我正在使用ApacheNetbeans11.1
  • 我用的是弹簧靴
  • 我的应用程序正在Tomcat服务器上运行
  • 我使用的第三方代码是Stimulsoft Reports库
  • 我正在使用ThreadPoolTaskExecutor来启动线程
  • 我正在使用Future.cancel(true)向线程发送中断信号

共 (0) 个答案