Java 理解GC失败消息

Java 理解GC失败消息,java,garbage-collection,jvm,Java,Garbage Collection,Jvm,我在我的GC日志中看到了这一点,但这到底意味着什么?我如何解决它(使用CMS) a。分配失败:这仅仅意味着程序需要内存,但没有可用的内存。因此,执行了一个次要的GC来释放内存,以便创建新对象。如果一个应用程序有太多的分配失败,那么增加Young Gen/Eden空间的大小是一个不错的选择。 请参考下面的链接,这是关于调优JVM的好提示。 a。分配失败:这仅仅意味着程序需要内存,但没有可用的内存。因此,执行了一个次要的GC来释放内存,以便创建新对象。如果一个应用程序有太多的分配失败,那么增加You

我在我的GC日志中看到了这一点,但这到底意味着什么?我如何解决它(使用CMS)


a。分配失败:这仅仅意味着程序需要内存,但没有可用的内存。因此,执行了一个次要的GC来释放内存,以便创建新对象。如果一个应用程序有太多的分配失败,那么增加Young Gen/Eden空间的大小是一个不错的选择。 请参考下面的链接,这是关于调优JVM的好提示。
a。分配失败:这仅仅意味着程序需要内存,但没有可用的内存。因此,执行了一个次要的GC来释放内存,以便创建新对象。如果一个应用程序有太多的分配失败,那么增加Young Gen/Eden空间的大小是一个不错的选择。 请参考下面的链接,这是关于调优JVM的好提示。

这(分配失败)仅仅意味着由于没有足够的内存进行分配而触发了GC。这里没有要解决的问题。

这(分配失败)只意味着GC被触发,因为没有足够的内存进行分配。这里没有问题要解决。

程序是否不工作?具体解决什么?问题还不清楚。您是否在问如何解决“GC(分配失败)”?程序是否不工作?具体解决什么?问题还不清楚。您是否在问如何解决“GC(分配失败)”问题?
[GC (Allocation Failure) 2018-01-08T12:09:08.677+0000: 45.380: [ParNew
Desired survivor size 8945664 bytes, new threshold 6 (max 6)
- age   1:    4558248 bytes,    4558248 total
- age   2:     246416 bytes,    4804664 total
- age   3:    1575864 bytes,    6380528 total
: 142273K->6418K(157248K), 0.0235404 secs] 234438K->98584K(506816K), 0.0237255 secs] [Times: user=0.03 sys=0.00, real=0.03 secs]