大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你可以先用内存监控工具,进行监控,看看这个功能到底用多少内存。如果不多,其实都不需要实现你说的代码监控的。如果你要使用代码监控,你可是使用Runtime类的几个属性,MaxMemory、FreeMemory、TotalMemory。然后实现个线程,在下载pdf功能前开启线程,然后完毕时关闭线程,如果内存即将溢出(设定个阈值,比如说15%),就报错,跳转到错误页面。
因为努力和真诚,有更多的客户和我们聚集在一起,为了共同目标,创新互联在工作上密切配合,从创业型企业到如今不断成长,要感谢客户对我们的高要求,让我们敢于面对挑战,才有今天的进步与发展。从网站到小程序定制开发,软件开发,成都app软件开发,十年企业网站建设服务经验,为企业提供网站设计,网站托管、服务器托管一条龙服务.为企业提供全网整合营销推广,定制网站建设,原创设计,十年品质,值得您的信赖.
要定位到行,代码要debug编译,至少要带上行信息。
线程占用内存高低,可以用jmap做heap dump出来给MomoryAnalysis分析他可以按线程统计,一般也可以用它来找出造成OOM的原因。
线程占用CPU,上述内存的问题是一个方面,另外也可以jstack打线程栈来分析。Linux上ps -T -p可以看底层线程的CPU占用(Windows上需要额外按工具),记得线程编号可以在jstack打出来的线程栈中检查。
使用java自带的性能分析工具jvisualvm , 可以方便的查看内存, 对象, 线程等多种信息.
win+R 然后输入 jvisualvm 回车即可
效果如下图