Можете ли вы настроить размер резервирования сегмента кучи среды выполнения C в XP?
-
23-09-2019 - |
Вопрос
Когда среда выполнения VC6 C в XP не может обслужить запрос на выделение в пределах существующего сегмента кучи, она резервирует новый сегмент.Размер этих новых сегментов увеличивается в 2 раза (до тех пор, пока не останется достаточно больших свободных областей для этого, после чего он уменьшается до меньших сегментов).
В любом случае, есть ли какой-либо способ контролировать это поведение в XP с помощью среды выполнения VC6?Например, удвоение до точки, но ограничение сегментами размером 64 МБ.
Если на XP нет способа, но есть на 7, это тоже было бы полезно знать.Или, если на VC6 нет способа, но есть на VC8 или выше, было бы интересно.
Решение
Если вам нужно конкретное поведение при распределении, напишите свой собственный распределитель.VirtualAlloc и т.д. Существуют, чтобы помочь вам сделать это.Использование компилятора и CRT, которые все еще поддерживаются, тоже помогло бы.