0

1 つの巨大なデータ ファイルがあります。このファイルをメモリ内で毎回読み取るのは非常に時間がかかります。バックグラウンドでのプロセスのように、このファイルを常にメモリに保持したいのですが、他のJavaプログラムはオンデマンドでメモリから読み取ることができます。誰でもその方法を教えてもらえますか

4

2 に答える 2

4

OS は、ディスク キャッシュ内のメモリに保持するファイルを決定します。同じファイルを繰り返し読み取る場合、メモリのサイズ以上でない限り、メモリ内にあるはずです。

繰り返しの読み取りに時間がかかる場合は、読み込み/読み取りではなく、ファイルの読み取り/解析に時間がかかる可能性があります。

于 2012-11-29T17:33:48.960 に答える
0

通常のアプローチは、巨大なデータファイルをファイルの内容を表すJavaオブジェクトにインポートすることです。メモリ内では、このオブジェクトは、依存するメモリがはるかに少ないか、より多くのスペースを必要とする場合があります。

そのオブジェクトを取得したら、それをインポートする必要はありません。

そのオブジェクトが初めて必要になったときに、ファイルを読み取ります。
後でそのデータが再び必要になったときに、オブジェクトにアクセスしますが、ファイルはもう読み取りません。

于 2012-11-29T18:49:18.757 に答える