私は200MBのファイルを持っています。次の形式のファイルを持っています。Javaは200MBのファイルを読み込み、メモリにロードするとどのくらいのメモリが必要になるでしょうか?
各行は0,1,2,3の間隔の整数です。
0 1 2 0 1 3 ...
だから、私は、Vectorを使用してアレイを使用して、メモリにこのファイルを読みたい場合は?またはByteArrayを使用していますか?またはストリング? は、私が適切なJavaヒープサイズを設定するために、メモリの種類を見積もることができますか?十分な256MB?各バイトのための文字列の使用はchar(あなたがバイトを使用するように仮想マシンフラグを設定することができます)のリストについては
- - どのように多くの整数カウント文字列のサイズ×2の場合
最も良い方法は、アプリをプロファイルすることです。コマンドラインで "jvisualvm"を実行してみてください。 –
私は一般的にメモリに200MBのファイルをロードすることを避けるでしょう。つまり、間違った問題を解決している可能性があります。 –
Meh;私は200Mファイルをメモリにロードすることに問題はありません。実際に何をしようとしているのか、アクセスパターンが何であるかなどによってまったく異なります。さらに、何が行われているかによって、とにかくOSはそれをメモリに保持している可能性があります。 –