System.out.println 不起作用

lat*_*s64 4 java blocking println

在哪些情况下,java 的 System.out.println 将无法产生任何输出。我在一个方法内部调用了它,有时在调用该方法时我得到了 println ,而有时我没有。

更新:我也在 println 之后使用 System.out.flush()。

更新:感谢您的调试帮助。结果发现,打开对话框的阻塞调用使输出显示的顺序大大不正确。我以为我试图打印消息的方法在对话框关闭时被调用,但方法本身就是调用对话框的方法,所以在关闭之后它已经超过了打印输出,这是我开始寻找测试的地方。如果有人有能力删除此问题,因为问题不是最初提出的问题,我们将不胜感激。

Jas*_*Day 5

System.out.println在某些平台上使用缓冲输出。根据您的代码在做什么,在您的程序退出之前缓冲区可能没有被刷新。试着把System.out.flush()你的printlns放在后面,看看是否有帮助。

编辑:

有时当方法被调用时我得到 println 有时我没有

您如何验证该方法已被调用但 println 不产生任何输出?您的方法是否有可能在到达 println 之前抛出异常(然后被吞下)?

当然,查看一些实际代码会很有帮助。