Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
при закрытии хендла память (которая была выделена сверх указанного в CreateFileMapping) разве не возвращается взад?
в конце чего? конце винды или закрытия хендла или закрытия приложения?
Как-то это неправильно - освобождать память в процессе работы закрытием дескриптора.
Память надо освобождать без надежды на Виндос.
:) а как же иначе её освобождать то? все что выделил, то и удалил. в MSDN при работе с Mapping ничего не скзано про ручное освобождение памяти перед закрытие хендла
Вадим. что конкретно мы разбираем?
я нашел два способа расширить память. Вы считаете что в обоих случаях будут проблемы с утечкой памяти?
Если все дескрипторы закрываются, утечек не будет. Утечка, это, когда программа выгрузилась, но оставила занятыми ресурсы.
Но возможны проблемы с черезмерно большим потреблением памяти. Сам недавно на такое попался. Подключил не тот класс для работы с таймсериями. Подключил, который индексирует тики посекундно. Стал таким классом работать с месячными барами. Всю память сожрало за 30 секунд. Это один из возможных вариантов. Надо такое отслеживать и предупреждать.
Второй вариант, когда программе понадобилось много памяти, например 1000 Мб, но не надолго. Если её не освободить, то остальным программам останется на эти 1000 Мб меньше пока Ваша программа не выгрузится.
Одним словом, надо отслеживать потребление ресурсов.