打开Java FileOutputStream有效吗?

Kyranstar

我现在正在为程序编写单例记录器,我想知道是否最好在每次登录时打开和关闭它,还是在创建单例时打开流并在终止时关闭它?程序?如果我要这样做,我将如何在终止时将其关闭?

伦布朗

一次打开文件的主要优点性能您可以节省open每次调用的麻烦,并寻求到文件末尾进行追加;如果文件很大(某些日志通常是),则情况会变得更糟。

缺点是:

  1. 如果写入器中有一些缓冲(延迟写入,则您可能无法立即读取最后一个日志行但是,可以通过在每次写入后刷新来解决此问题(您可能会损失一些性能,但这通常不相关)。

  2. 您不能同时从不同的进程写入同一日志。但是您可能不需要这个,并且,如果需要,打开和关闭解决方案仍然需要处理并发。

  3. 某些外部日志处理(通常是带有重命名的日志轮换)会出现问题。为此,您可能需要实现一些关闭和重新打开文件的信令。

通常,优点要超过缺点,因此一般规则是保持日志文件打开。但这取决于情况。

(正如其他答案所指出的那样,通常您宁愿使用一些标准的日志记录库,而不是自己执行该日志记录库。但是,尝试一下或至少考虑所有涉及的问题是有益的。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

打开Java FileOutputStream有效吗?

来自分类Dev

Java语法-强制转换后的加号有效吗?

来自分类Dev

这是有效的吗?(C,C ++,Java)

来自分类Dev

这是Java中的有效DateFormat吗?

来自分类Dev

这是Java中ServiceLocator模式的有效实现吗?

来自分类Dev

这个线程在java中安全有效吗

来自分类Dev

Java ForkJoinPool具有非递归任务,窃取工作有效吗?

来自分类Dev

是var {Route,Redirect,RouteHandler,Link} =路由器;在Java语言中有效吗?

来自分类Dev

保持Java程序无限期运行的方法有效吗?

来自分类Dev

\ u65549是有效的Java标识符吗?

来自分类Dev

Typesafe有效地仅读取Java集合吗?

来自分类Dev

使用Java套接字时可以保证数据有效性吗?

来自分类Dev

保持Java程序无限期运行的方法有效吗?

来自分类Dev

Java中的不可变字符串-替换方法有效吗?

来自分类Dev

有效的PDF可以是“ Java序列化数据”吗?

来自分类Dev

Java命名约定中的“水果...”是有效的类名称吗?

来自分类Dev

Java中的有效数组扩展

来自分类Dev

计算有效数字java

来自分类Dev

Java8-“有效最终”

来自分类Dev

来自有效Java的ElvisStealer

来自分类Dev

Java有效删除对象

来自分类Dev

Java模式匹配的有效方法

来自分类Dev

推送通知使用有效负载打开正确的页面

来自分类Dev

Java中的协议缓冲区:我们可以有效地处理原始数组吗?

来自分类Dev

Java / JavaFX解决最终问题或有效最终问题,这是一个好方法吗?

来自分类Dev

Java语言和Jquery语言足以构成一个有效的Web Messenger应用程序吗?

来自分类Dev

Spark:在某个节点上打开数据库会话,进行广播,然后在另一个节点上检索它...该会话仍然有效吗?

来自分类Dev

有效的Regex语句在Java中不是有效的匹配项

来自分类Dev

有效的Regex语句在Java中不是有效的匹配项

Related 相关文章

  1. 1

    打开Java FileOutputStream有效吗?

  2. 2

    Java语法-强制转换后的加号有效吗?

  3. 3

    这是有效的吗?(C,C ++,Java)

  4. 4

    这是Java中的有效DateFormat吗?

  5. 5

    这是Java中ServiceLocator模式的有效实现吗?

  6. 6

    这个线程在java中安全有效吗

  7. 7

    Java ForkJoinPool具有非递归任务,窃取工作有效吗?

  8. 8

    是var {Route,Redirect,RouteHandler,Link} =路由器;在Java语言中有效吗?

  9. 9

    保持Java程序无限期运行的方法有效吗?

  10. 10

    \ u65549是有效的Java标识符吗?

  11. 11

    Typesafe有效地仅读取Java集合吗?

  12. 12

    使用Java套接字时可以保证数据有效性吗?

  13. 13

    保持Java程序无限期运行的方法有效吗?

  14. 14

    Java中的不可变字符串-替换方法有效吗?

  15. 15

    有效的PDF可以是“ Java序列化数据”吗?

  16. 16

    Java命名约定中的“水果...”是有效的类名称吗?

  17. 17

    Java中的有效数组扩展

  18. 18

    计算有效数字java

  19. 19

    Java8-“有效最终”

  20. 20

    来自有效Java的ElvisStealer

  21. 21

    Java有效删除对象

  22. 22

    Java模式匹配的有效方法

  23. 23

    推送通知使用有效负载打开正确的页面

  24. 24

    Java中的协议缓冲区:我们可以有效地处理原始数组吗?

  25. 25

    Java / JavaFX解决最终问题或有效最终问题,这是一个好方法吗?

  26. 26

    Java语言和Jquery语言足以构成一个有效的Web Messenger应用程序吗?

  27. 27

    Spark:在某个节点上打开数据库会话,进行广播,然后在另一个节点上检索它...该会话仍然有效吗?

  28. 28

    有效的Regex语句在Java中不是有效的匹配项

  29. 29

    有效的Regex语句在Java中不是有效的匹配项

热门标签

归档