有一个大文件。我需要快速排序。我将按适合RAM的部分处理文件,以避免使用页面文件(下一步:合并部分(。如何使用最大RAM?
我的解决方案:使用WinApi文件内存映射,但我不知道如何获得部分文件的最大大小,但适合RAM(如何确定大小(?
您可以虚拟锁定要处理的页面。它在物理内存中锁定所需的大小(如果有足够的大小(,将其他内存交换到分页文件。
您可以使用GlobalMemoryStatusEx函数来确定应用程序可以在不严重影响其他应用程序的情况下分配多少内存。
这样您就可以映射文件并锁定要处理的页面。