1

メモリ マップされた大きなファイルをスクロール可能なボックスに表示する場合、ビューがファイル全体を表すのと、現在表示されているファイルの領域のみを表すのとのどちらがより適切ですか?
より大まかに言うと、.Net のメモリ マップ ファイルでページングが行われるのは、抽象化のどのレベルですか? メモリに保持されているファイルのページ サイズ/量は、MemoryMappedViewAccessors に関連していますか、それともこれらのオブジェクトとは無関係ですか?

4

1 に答える 1

2

独立しています。アドレス (または近くのアドレス) がアクセスされるまで、データはメモリにコピーされません。ただし、ビューのサイズはプロセスのアドレス空間に対してカウントされます。プロセスのアドレス空間が 2GB または 3GB に制限されているため、これは 32 ビット システムでは非常に重要です。これは、必要なサイズの連続したブロックがアドレス空間で使用できない可能性があるため、将来の割り当てを行う機能に影響を与えます。

大きなビューを使用できることは、64 ビット システムの主な利点としてよく挙げられます。

于 2009-08-06T02:10:07.760 に答える