首页文章正文

e.printstacktrace() 生产环境禁用,input

createstatement 2023-05-27 16:51 805 墨鱼
createstatement

e.printstacktrace() 生产环境禁用,input

e.printstacktrace() 生产环境禁用,input

简单来说,e.printStackTrace会通过全局输出流System.err输出错误信息。在输出过程中,System.err会被锁定,所以多线程执行fe.printStackTrace时,同时直接使用see。 printStackTrace打印日志有什么问题吗? 当然它很好,但它不好。 主要有以下几个方面的原因:1.占用内存过多,导致锁死。要打印字符串输出到控制台,字符串常量池所在的内存块需要有足够的内存。

可以看看fe.printStackTrace()的源码,这个方法的性能比较差。除了需要synchronized显式同步外,还需要调用native方法获取stack信息,所以生产环境一般打印e.printStackTrace()异常堆栈。 注意:每次重新启动Jboss时都会滚动标准日志输出和标准错误输出文件。如果将大量输出发送到这两个文件,文件大小很容易超过操作系统的大小限制。 【强大的

e.printStackTrace()在实际生产中,除了不停地刷控制台外,没有任何用处,而且会导致日志系统无法收集异常错误的具体信息,如日期、时间、级别等,所以正确的(打印的stacklog与业务代码日志交织在一起,通常不方便查看异常日志。由你.printStackTrace()生成的字符串语句记录堆栈信息。

publicvoidwrong(){try{readFile();}catch(IOExceptione){//不要在生产环境中使用e.printStackTrace();}}因为它占用内存太多,造成死锁,而且日志交错混合,也不好读。 在正确的生产环境中,禁止直接使用System.out或System.err输出日志或使用see.printStackTrace()打印异常堆栈。

11.3生产环境不要使用see.printStackTrace(),因为太占内存,导致死锁,而且日志交错混杂,不易阅读。 正确的使用方法如下:11.4线程池提交过程中出现异常怎么办>在java开发中添加通过e.printStackTrace()打印异常。 错误,因为这种异常没有附加任何日志规范,比如日期、时间、级别,它带来

后台-插件-广告管理-内容页尾部广告(手机)

标签: input

发表评论

评论列表

黑豹加速器 Copyright @ 2011-2022 All Rights Reserved. 版权所有 备案号:京ICP1234567-2号