2016-04-30 6 views
0

SAXパーサーを使用して解析している大きなXMLファイルがあります。処理中に、解析されたJSONのキーと値を持つ大きなHashMapを作成します。Java 8 String outofmemoryエラー

私の理解しているように、javaアプリケーションではPermgenの設定は必要ありませんが、Heapに文字列が作成されますが、OutOfMemoryErrorの取得方法はいくつかあります。私の理解は正しいのですか、間違ったパーサーを選んでいますか?

+0

pls詳細を追加します。ヒープサイズ、データのサイズ、コード内のどこにOOMが来ると思いますか? – Abhishek

+0

文字列は常にヒープに格納されていましたが、Java 8ではMetaSpaceがPermGenSpaceを置き換えましたが、PermGenSpaceはクラス宣言を格納するために使用されていましたが、MetaSpaceについてよく知っているわけではありませんが、それは – Aaron

+0

こんにちはアーロンとAbhishek、応答のために感謝します。私は文字列がヒープに似ているが正確には実行時定数プールの一部であると思った。あなたは他に何を考えていますか? – tesnik03

答えて

1

次に見てみる必要があります - あなたが使用しているガーベージコレクション

  1. IDEを使用している場合は、正しいJavaバージョンを使用しているかどうかを確認してください。 IDEによっては、特定のJVMで実行するように設定することができます。

どのJavaインストールを使用していますか?

+0

いいね、ありがとうございました。 – tesnik03

関連する問題