2017-02-24 25 views
2

jvmパラメータMaxMetaspaceSizeとメタスペースサイズを指定せずに重いJava 8 rcpデスクトップアプリケーションを起動して使用するとどうなりますか?java 8 rcpアプリケーションでmaxmetaspaceパラメータを指定しないとどうなりますか?

通常、ヒープメモリで消費されるメモリは、非ヒープ(メタスペース)消費とほぼ同じですか?

最後の質問:メタパラメータサイズパラメータを指定しないと、アプリケーションがクラッシュする可能性がありますか?

答えて

5

MaxMetaspaceSizeあなたが持っているメモリのように、無制限です。どの時点で、メタスペースがヒープサイズと同じであることがわかっているかです。しかし、ヒープとメタスペースの両方がガベージコレクションされます。これらの値はすぐに変更される可能性があります。

これを指定しないと、できるだけ多くのものが成長することを意味します(私は、スワップも含めて考えます)。私は、からアプリケーションがクラッシュする可能性はないと考えています。ただし、MetaSpaceを満たしているときは、OutOfMemoryを持つを付けてください。それは個人的には非常に疑問です。

+0

貴重なご回答ありがとうございます。診断結果(パフォーマンスとメモリ消費量のグラフ)によると、定期的に収集されるヒープメモリとは異なり、メタスペースがGCによって収集されないことに気付きました(jvmアプリケーション構成ではメタスペースサイズパラメータは指定されていません)。いくつかのクラッシュ中にpidファイルが生成されていない、それは激しいクラッシュのように思える(私は12のRAMの移動を持っている)と32の別のコンピュータ上でクラッシュしないアプリケーションは、同じjvm構成(xmx、メタスペースパラメータ) – Anas

+1

これは死ぬことのない都市の神話のようです。 "permgen"はガベージコレクションされています。常に。主な問題は固定サイズでした。だからこそ、非常に多くの人がメタスペースの最大のメリットを打ち消し、最大のメタスペースサイズの設定で古いパーマネントサイズの設定を置き換えるのがとても奇妙に見えます。 – Holger

+0

@Holger great。私はいつもそれが収集されていないと思った... thx – Eugene

関連する問題