|
|
1
3
没有最佳尺寸。对于32位进程,总共只有4 GB的地址空间,通常只有2 GB可用于用户模式进程。然后,这2 GB被来自exe和DLL的代码和数据、堆分配、线程堆栈等碎片化。鉴于此,您可能找不到超过1 GB的连续空间来将文件映射到内存中。 最佳数量取决于您的应用程序,但我担心将超过512 MB的内存映射到32位进程中。即使将自己限制在512 MB,根据您的应用程序,您也可能会遇到一些问题。或者,如果你可以使用64位,那么将数GB的文件映射到内存中应该没有问题——你的地址空间太大了,应该不会造成任何问题。
编辑:我刚刚意识到我的答案是特定于Windows的,但你不知道你在讨论哪个平台。我推测其他平台对内存映射文件也有类似的限制因素。 |
|
|
2
0
文件需要内存映射吗? 我在733Mhz的PIII上编辑了8gb的视频文件(不愉快,但可行)。 |