|
sleepy
78 / 53 / 6
Регистрация: 29.07.2009
Сообщений: 179
|
||||||
BitmapImage-работа с памятью01.10.2009, 15:52. Показов 4752. Ответов 3
Метки нет (Все метки)
Вот решил написать для практики простенький просмотрщик изображений с помощью C# WPF.
Картина такая: в TreeView пользователь выбирает нужный файл, картинка открывается. Для вывода картинки использую класс Image. В качестве Source у Image использую BitmapImage. Проблема в том, что каждое загруженное изображение грузится в оперативку, а вот удаляться оттуда никак не хочет. В последствии - после открытия нескольких картинок высокого разрешения получаю забитую память. Перепробовал уже много вариантов. Последний приложен ниже.
В общем, как кто боролся с распределением памяти в таких случаях?
0
|
||||||
| 01.10.2009, 15:52 | |
|
Ответы с готовыми решениями:
3
WPF, работа с изображениями. BitmapImage, BitmapSource, BitmapFrame, и их отличия Работа с памятью Работа с памятью |
|
sleepy
78 / 53 / 6
Регистрация: 29.07.2009
Сообщений: 179
|
|
| 05.10.2009, 19:35 [ТС] | |
|
Что выяснилось позже - после запуска приложения в XP, все чистится и удаляется. В Vista и 7 - не чистится память. И вариантов больше нет.
0
|
|
|
34 / 21 / 2
Регистрация: 31.03.2009
Сообщений: 362
|
||||||
| 10.01.2010, 00:31 | ||||||
|
а если попробовать использовать Garbage Collector?
ой извиняюсь, не сразу заметил, вы использовали GC.Collect, но последнее тоже желательно использовать, помогает.
0
|
||||||
|
sleepy
78 / 53 / 6
Регистрация: 29.07.2009
Сообщений: 179
|
|
| 10.01.2010, 00:43 [ТС] | |
|
LordXaosa, пробовал) Пробовал все, но не помогает ничего. Путем экспериментов позже было выявлено, что после открытия 2-3 других картинок сборщик мусора все-таки чистил память. Но это не выход из ситуации.
Единственный вариант - ждать новую версию фрэймворка. Добавлено через 11 минут Даже после присваивания объекту класса null GC не хотел ничего чистить. Когда тестил 2010-ю студию и новый фрэймворк, там все уже было получше (точно не помню уже)
0
|
|
| 10.01.2010, 00:43 | |
|
Помогаю со студенческими работами здесь
4
Работа с памятью Работа с памятью Работа с памятью Работа с памятью Работа с памятью Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|