一尘不染

Java HotSpot(TM)64位服务器VM警告

java

我有一个tomcat作为我的网络服务器,它会根据给定的错误自动停止-

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00007f16a8405000, 12288, 0) failed; error='Cannot allocate memory' (errno=12)

我需要弄清楚实际发生了什么?那警告是什么意思?


阅读 635

收藏
2020-12-03

共1个答案

一尘不染

没有足够的内存让Java Runtime Environment继续运行。

本机内存分配(malloc)无法分配xxxxx字节来提交保留的内存。

可能的原因:
1.系统没有物理RAM或交换空间
2.在32位模式下,达到了进程大小限制

可能的解决方案:1
.减少系统上的内存负载
2.增加物理内存或交换空间3.
检查交换后备存储是否已满
4.在64位OS上使用64位Java
5.减小Java堆大小(-Xmx /- Xms)
6.减少Java线程数量
7.减少Java线程堆栈大小(-Xss)
8.使用-XX:ReservedCodeCacheSize =设置较大的代码缓存(

2020-12-03