Java - 如何调试任务 ?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java - 如何调试任务 ?相关的知识,希望对你有一定的参考价值。

我的项目中有一个长期运行的Task,我很难调试。据我了解,Task永远不会抛出异常,也不允许其中的任何代码这样做。

在测试应用程序时,我遇到了许多情况,执行只是挂起,没有错误,没有警告,没有。

现在,我已经能够捕捉Throwable而不是看看是什么导致了这个问题,但这似乎是一个糟糕的想法,并且创造了比必要更多的工作。

所以我的问题是,作为业余程序员,当我看不到异常时,我该如何调试我的Task中的代码?

答案

一些方法:

1)显示足够的日志(例如:System.outlogbacklog4j2

void taskMethod() {
    System.out.println("Tip1");
    doSomething1();
    System.out.println("Tip2");
    doSomething2();
    System.out.println("task over");
}

2)当任务挂起而没有退出时,您可以使用jstack显示堆栈以查看任务挂起的位置。

3)使用像Intellij IDEAEclipse这样的IDE,在调试程序时它会挂起,只需在调试工具栏中单击“中断”或“暂停”,然后你就有机会调试程序。

以上是关于Java - 如何调试任务 ?的主要内容,如果未能解决你的问题,请参考以下文章

PHP代码-psysh调试代码片段工具

方便调试使用的代码片段

如何重构这个 Java 代码片段

java 登录过程 - android片段,异步任务登录,Asp.net控制器,存储库

如何在片段中使用 GetJsonFromUrlTask​​.java

当前一个片段中的某些任务完成时如何通知另一个片段中的适配器