128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
|
||||||||||||||||
1 | ||||||||||||||||
Не получается сделать грамотное удаление Bitmap (освободить ресурсы)27.06.2013, 10:22. Показов 2366. Ответов 13
Метки нет (Все метки)
Ситуация следующая, есть Bitmap, большого размера, по нажатию кнопки он перегенерируется исходя из данных.
Если ничего не писать больше, то при каждом нажатии кнопки размер программы будет увеличиваться, можно так всю оперативку забить. Можно конечно объявить этот битмап глобально, один раз, при загрузке формы создать его, а потом только перерисовывать. Но это, к сожалению не вариант. Пытался его удалить, после присвоения pictureBox1->Image значения bmRastr, через
сейчас делаю через
0
|
27.06.2013, 10:22 | |
Ответы с готовыми решениями:
13
Освободить ресурсы от рисунка Освободить ресурсы BitmapImage Как освободить ресурсы в потоке? Освободить ресурсы для повторного запроса |
128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
|
|
01.07.2013, 17:35 [ТС] | 3 |
мне, к сожалению, нужно, чтоб картинка сохранилась в pictureBox
0
|
128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
|
|
02.07.2013, 09:25 [ТС] | 5 |
Это я тоже понимаю
, но если я еще раз нажму на эту кнопку, он снова пересоздаст объект, без удаления старого, да и ссылки на старый объект Bitmap не получить, его надо тогда объявлять в куче, как мне сделать так, чтоб он не забивал оперативку целиком? Если создать PictureBox->Image через FromImage, а потом удалить файл с картинкой, то в программе картинка останется, вот и я хочу, чтоб она осталась в свойстве Image
0
|
128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
|
|
02.07.2013, 09:38 [ТС] | 7 |
да я понимаю, что отсюда и красный крест, я так и в самом посте пишу, но, представь, что это картинка 7000*7000 пикселей, я нажал кнопку, она сформировалась, потом я нажимаю еще раз нажал кнопку, она снова сформировалась, и так много-много раз, и каждый раз программа в оперативке будет увеличиваться
0
|
128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
|
|
02.07.2013, 09:43 [ТС] | 9 |
область видимости битмапа - функция события нажатия кнопки
0
|
128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
|
||||||
02.07.2013, 10:02 [ТС] | 11 | |||||
всё равно размер программы растет
0
|
128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
|
|
02.07.2013, 10:11 [ТС] | 13 |
ну, раз 25 пересоздал, сильно растет, с 12 до 50 метров
0
|
02.07.2013, 10:12 | 14 |
ну тогда раз принудительная сборка помогает, тогда ее и используйте
1
|
02.07.2013, 10:12 | |
02.07.2013, 10:12 | |
Помогаю со студенческими работами здесь
14
Как засунуть bitmap в ресурсы? Не получается освободить память Не получается освободить память динамического двумерного массива Почему не получается освободить память, выделенную для переменных в структуре? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |