「java内存使用过高」java内存占用过高
今天给各位分享java内存使用过高的知识,其中也会对java内存占用过高进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
电脑Java8update内存使用率高
可能是代码原因导致的问题,也可能是其他原因导致的问题。
使用dstat和top查看内存使用最高的应用,查到内存占用最高的是java应用,使用2253M内存,但是这台服务器跑了好几个java,具体哪个进程使用top看下资源情况,使用top,使用dstat可以看到java应用整体内存使用率超过了70%,其中pid为16494的进程一个应用占了28.7的内存,使用ps查看16494的线程情况,命令:psp16494-L-opcpu,pmem,pid,tid,time,tname,cmd,看到16494这个pid的应用产生了很多线程。在分析前需要将17417这个id转换为16进制,方便查找信息12[root@localhost~]#printf"%x\n"17417,440916进制为4409。将pid为16494的应用打印到日志中1[root@localhost~]#jstack-l16494jstack.log。查看内存堆栈信息,1[root@localhost~]#vimjstack.log,[root@localhost~]#vimjstack.log在日志信息中查找刚刚转换的4409。可以看到这个线程状态为WAITING通过查看日志发现有大量的waitingoncondition。1,parkingtowaitfor存在大量线程等待被唤醒,占用大量内存。
Java程序占用内存太高了怎么办?
先看下是否有内存泄露,简单的方法就是隔一段时间检查下内存,看看是否是持续上升。
然后看下资源是否可以优化,比如你加载的图片有没有resize过,尽可能减少资源的内存消耗。
游戏卡顿最主要的是FPS帧率太低,把帧率统计输出来看下。检查下UI线程里或者OpenGL线程里是否做了I/O操作,这个是造成卡顿的主要原因。把I/O操作全部放入工作线程中,UI线程只做数据读取和渲染。这样帧率就可以提高了
java项目中很多地方使用线程池,线上服务器内存占用越来越大.每个线程占用8.8M.问题是哪儿?
针对你说的这种情况,可以使用jvisualvm.exe直接查看内存使用情况,查看是否是有大对象。
关于java内存使用过高和java内存占用过高的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。