Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 同步System.out&;System.err_Java_Debugging_System.out_System.err - Fatal编程技术网

Java 同步System.out&;System.err

Java 同步System.out&;System.err,java,debugging,system.out,system.err,Java,Debugging,System.out,System.err,在调试代码时,我经常使用System.out和System.err。问题是当出现异常时,我使用System.out,但结果看起来不是很有条理 [CLIENT]:postinit: vic.rpg.gui.GuiMain.init() java.net.ConnectException: Connection refused: connect [CLIENT]:Destroying Network Thread... [CLIENT]:done! at java.net.DualStack

在调试代码时,我经常使用System.out和System.err。问题是当出现异常时,我使用System.out,但结果看起来不是很有条理

[CLIENT]:postinit: vic.rpg.gui.GuiMain.init()
java.net.ConnectException: Connection refused: connect
[CLIENT]:Destroying Network Thread...
[CLIENT]:done!
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
...
[CLIENT]:Starting Server...

这不是很严重,但有时会使读取日志变得有点困难。

您可以通过在每次写入任一流时调用
flush
来避免此问题。e、 g:

System.out.println ("Writing to *out*");
System.out.flush ();

如果您是从不同的线程进行日志记录,那么日志记录消息将自然交错。如果您想通过线程清晰地分离输出,我建议使用一个日志库,例如。

如果您使用正确的日志框架,您就不会有这种问题。我已经将System.out包装到我自己的PrintStream中,为每个方法添加一个
super.flush()