你好杰米 2018-06-22 05:59 采纳率: 88.9%
浏览 665
已采纳

【JAVA】关于一个jvm内存的问题?

请问我机器有40G内存

有两个jar程序要跑

给a程序分配Xmx30g
给b程序分配Xmx20g

请问我分配的总额超过了总量,但是比如b程序只是运行起来了,但是没有占用很多内存,a程序却需要占用20多g的内存

那么这样会出现问题么

实际情况是线上服务器已经有一个项目了,但是没有客户使用所以不消耗内存,目前有个新项目需要上服务器,但是运行的时候很耗内存,但是机器内存总共只有40g,我想能不能把目前的40g全分配给新项目,因为旧项目没有人用,这样会有问题么?(旧项目启动的时候设置了30g的内存)

  • 写回答

2条回答 默认 最新

  • qq_26126071 2018-06-22 06:22
    关注

    Xmx只是设置了允许的最大内存,如果程序实际运行不需要这么多,永远到达不了你设置的数量。所以,如果旧的设置30g,新的设置40g,那么这样当新旧都到达最大数量时候可能会有问题,当然也可能都到达不了最大数。
    所以,我的建议是将旧的程序设置内存下调,是的两个程序设置的最大内存不超过机器总量。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 在ISIS中什么是IP从地址
  • ¥15 压测时,并发量过高时,响应时间出现尖刺
  • ¥15 关于vmprotect3.8.4虚拟文件一项
  • ¥15 在不用IT调试的情况下怎样能连外网
  • ¥20 C#调用虚拟键盘TabTip.exe
  • ¥15 Qt4代码实现下面的界面
  • ¥15 CCS离散化传递函数与仿真不一致
  • ¥15 prism提示我reinstall prism 如何解决
  • ¥15 asp.core 权限控制怎么做,需要控制到每个方法
  • ¥20 while循环中OLED显示中断中的数据不正确