Этот вопрос на самом деле не связан с каким-либо конкретным кодом или даже языком.
Если вы выделяете большой (превышающий физическую память) объем памяти в Windows, это приводит к тому, что вся операционная система перестает отвечать на запросы - включая курсор мыши.который обычно мог перемещаться даже при полном сбое системы.
API рабочего набора, похоже, не решает проблему - кажется, что все приложения имеют начальный максимальный размер рабочего набора, уже установленный на довольно низкий уровень.
Я надеялся, что отображенные в память файлы (через boost api) помогут ОС принимать более правильные решения о загрузке / выгрузке страницы - но опять же, даже один проход через большие данные замораживает систему.
Есть ли какие-то волшебные вызовы WinAPIили другая хорошая практика программирования (кроме ручного управления всей выделенной памятью и ручного кэширования данных в файлах), которая поддержала бы операционную систему и другие приложения достаточно стабильными при использовании такого огромного количества данных?