SAXパーサーを使用して解析している大きなXMLファイルがあります。処理中に、解析されたJSONのキーと値を持つ大きなHashMapを作成します。Java 8 String outofmemoryエラー
私の理解しているように、javaアプリケーションではPermgenの設定は必要ありませんが、Heapに文字列が作成されますが、OutOfMemoryErrorの取得方法はいくつかあります。私の理解は正しいのですか、間違ったパーサーを選んでいますか?
SAXパーサーを使用して解析している大きなXMLファイルがあります。処理中に、解析されたJSONのキーと値を持つ大きなHashMapを作成します。Java 8 String outofmemoryエラー
私の理解しているように、javaアプリケーションではPermgenの設定は必要ありませんが、Heapに文字列が作成されますが、OutOfMemoryErrorの取得方法はいくつかあります。私の理解は正しいのですか、間違ったパーサーを選んでいますか?
次に見てみる必要があります - あなたが使用しているガーベージコレクション
。
IDEを使用している場合は、正しいJavaバージョンを使用しているかどうかを確認してください。 IDEによっては、特定のJVMで実行するように設定することができます。
どのJavaインストールを使用していますか?
いいね、ありがとうございました。 – tesnik03
pls詳細を追加します。ヒープサイズ、データのサイズ、コード内のどこにOOMが来ると思いますか? – Abhishek
文字列は常にヒープに格納されていましたが、Java 8ではMetaSpaceがPermGenSpaceを置き換えましたが、PermGenSpaceはクラス宣言を格納するために使用されていましたが、MetaSpaceについてよく知っているわけではありませんが、それは – Aaron
こんにちはアーロンとAbhishek、応答のために感謝します。私は文字列がヒープに似ているが正確には実行時定数プールの一部であると思った。あなたは他に何を考えていますか? – tesnik03