gpt4 book ai didi

java - LogHandler 刷新与发布中的直接输出

转载 作者:行者123 更新时间:2023-11-29 09:20:33 26 4
gpt4 key购买 nike

我目前正在编写自己的 java.util.logging.Handler,但我并不真正理解其中的概念...我在这里有我的发布方法,其中包含查看是否应显示 LogRecord 的逻辑,Formatter(如果 .getFormatter() == null) 最后我将格式化后的字符串放入缓存中。

现在我写了 flush() 方法,我在这里遇到了麻烦: flush() 方法从不被 Java 调用,所以当错误发生时, 它没有显示。我将 flush() 调用到我的 publish() 方法中,现在我可以看到日志消息...所以我在这里看不到概念? flush() 何时调用,由谁调用?还是我必须像现在这样,然后在 publish() 方法中自己调用 flush()

如果您看一下这个例子:http://www.java2s.com/Code/Java/Language-Basics/HowtowritecustomLoghandler.htm他们甚至不使用 flush() 方法

最佳答案

现在可能有点晚了,但为了其他人的利益......

我看到了类似的东西,并假设了与您类似的行为

我看了一下它的用法,它似乎是一种以标准方式进行刷新的方法,而且似乎可以保证您在关闭时会刷新。

有些人“冲洗自己”,我想保证父类(super class)也可以从冲洗中受益。

最后,由于此刷新没有阈值控制,而且我没有看到它在调试 session 中被调用,也没有看到调用它的代码,我认为 Java 在这方面没有给我们任何东西。

关于java - LogHandler 刷新与发布中的直接输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6729202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com