2012-04-11 57 views
0

問題: 具有比此特定任務更高優先級的任務會佔用CPU時間並導致一些超時問題。我們在GC全週期期間非常頻繁地看到這個問題。所以,有沒有辦法將GC限制在JVM的特定%的CPU?使用有沒有一種方法可以將GC限制在JVM中特定的CPU%?

JVM參數:

wrapper.java.additional.3 = -XX:+ UseConcMarkSweepGC

wrapper.java.additional.4 = -XX:+ ExplicitGCInvokesConcurrent

wrapper.java。 additional.5 = -XX:+ CMSIncrementalMode

wrapper.java.additional.6 = -XX:CMSIncrementalDutyCycle = 50

wrapper.java.additional.7 = -XX:C MSIncrementalDutyCycleMin = 50

+1

請參見[熱點虛擬機垃圾收集調整](http://www.oracle.com/technetwork/java/javase/gc-tuning-6-140523.html)。 – Jesper 2012-04-11 05:29:10

回答

5

不,但你也不想要。問題是,即使你使用CMS,也有一些部分必須阻止這個世界,而這可能會導致你的超時。

更好的解決方案是對應用程序進行內存配置,以減少垃圾。這將按照尺寸和頻率縮短您的GC時間。如果您每天可以將GC減少到少於一次,則不會再有這個問題。

相關問題