公司的程序,运行时内存一直增加不释放。我用JProfiler 和JConsole检测了内存情况,使用还算正常。监控到内存会自动GC
而且保持在500M used,400M free 的情况,但是windows中线程管理中看到的却是1.6G的内存占用,而且使用那些工具手动GC
系统使用的内存变成 20M used ,800m free 。可是windows中线程管理中看到的还是1.6G。请问这是怎么回事?该怎么调整呢。时间久了会报内存溢出。
而且保持在500M used,400M free 的情况,但是windows中线程管理中看到的却是1.6G的内存占用,而且使用那些工具手动GC
系统使用的内存变成 20M used ,800m free 。可是windows中线程管理中看到的还是1.6G。请问这是怎么回事?该怎么调整呢。时间久了会报内存溢出。
解决方案 »
- 冷蝶整理:J2EE面试细节问题——EJB
- FTPClient deleteFile方法 返回true 但是没有删掉文件 是什么原因?
- struts2标签<s:action>问题,真的无语了!
- FCKeditor在线编辑器在jsp页面应用的问题?急急急!
- 用javascript修改JSP表单里的数据提交无反应!
- List集合中包含相同對象,結果集造成後者值覆蓋前者對象
- 如何删掉<?xml version="1.0" encoding="UTF-8"?>?
- ejb问题。max(substring(a,1,2))???在线等
- (紧急求救在线等待解决就给分)我在JBuilder下的实体ejb中建立发现器或选择器编译的时候总是报告EJBQL不能处理可是EJBQL似乎没有错(按
- activemq 持久化的问题
- myeclipse6.5使用c标签和EL出错……求助
- 我们爱分享---读取数据当中有“口”型特殊符号时解决办法(写数据时候)
内存溢出是主要问题,但你说的这些现象对帮助分析内存溢出没意义。
请继续使用工具来监控JVM,定义执行GC,然后检查哪些对象在每次GC之后持续增长。也就是GC并不能回收且持续增长的对象;这才是重点。
程序使用了内存之后,gc之后jvm中变小,操作系统线程中看到的内存永远不会变小吗?java占用了之后不会再释放给操作系统了吗?