java进程内存占用超过xmx设置的问题

来源:互联网 发布:最流行的网络歌曲2017 编辑:程序博客网 时间:2024/05/16 15:06

今天通过top查看系统信息,发现系统启动的一个进程内存占用达900M之多

top - 11:30:26 up 167 days, 40 min,  1 user,  load average: 1.09, 0.96, 1.02
Tasks:   1 total,   0 running,   1 sleeping,   0 stopped,   0 zombie
Cpu(s): 30.6% us,  3.2% sy,  0.0% ni, 65.2% id,  0.8% wa,  0.1% hi,  0.1% si
Mem:   4151368k total,  4146780k used,     4588k free,     6108k buffers
Swap:  8191968k total,  2892428k used,  5299540k free,  1272624k cached


  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                   
 7293 collect   17   0  909m 333m  28m S  0.0  8.2   0:31.77 java                   


但是,程序设置的xmx才512M,按理说应该抛出   java.lang.OutOfMemory      才是,可是程序却正常运行

到网上搜下,终于找到答案,原来top显示的内存大小包含jvm占用的,也就是说上面的        909m = jvm占用+java进程占用                       

0 0