<thead id="rrjt3"></thead>
      <progress id="rrjt3"><dfn id="rrjt3"></dfn></progress>

      <em id="rrjt3"></em>

        <address id="rrjt3"><ins id="rrjt3"><dfn id="rrjt3"></dfn></ins></address>
          <i id="rrjt3"></i>

        System.out.print與Log的比較

        時間:2022-09-22 15:38:53 類型:JAVA
        字號:    

          System.out.print的優點:直觀、方便。

          Log的優點:異步、解耦、靈活、策略多。

          提到System.out.print,除了感覺到方便之外,還會想到其他的優點嗎?似乎也就這個優點,syso快捷鍵瞬間就是一條打印語句,很順手的一件事,除了這個感覺外,似乎也沒有其他特別的感受了。

          System.out.print和java運行程序運行在同一線程,也就是說,業務程序會等待System.out的動作,導致資源被占用,log4j、logback等日志工具進行調試信息的打印,這類工具是異步線程的,不會使程序處于等待狀態。

          System.out.print是在控制臺輸出,只能輸出到控制臺,功能上線后,總不能一直盯著控制臺吧,而且日志文件需要保留,以供日后分析,是需要一套管理規范的,即便使用tomcat服務器,System.out會輸出到catalina.out文件,catalina.out文件也不會一直存在,需要定期清空,如果不清空,大文件的讀寫也是挺影響性能的。說到這里,System.out.print寫入的文件只有一個,對于一個文件的讀寫,這個io肯定會排隊寫,且System.out.print在當前線程,肯定對性能會有稍微的影響。

          程序中充斥著大量的System.out.print打印代碼是相當不規范的。


        黄网站免费 <