Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.10.2014, 17:23   #1
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию Перерасход памяти при работе с Image

Мне нужно загрузить несколько картинок в оперативную память. Суммарный объем картинок 500мб. Большинство картинок не больше 1.5мб, но попадаются и по 50мб.
Столкнулся с проблемой нехватки памяти. Если не загружать ничего, то программа потребляет 5мб ОП, а если загрузить одну картинку(40мб), то уже 260мб ОП.
10 картинок объемом 200мб в оперативной памяти занимают 1гб.
С чем может быть связана данная проблема?

Заугржаю картинки с помощью метода Image.FromFile

Последний раз редактировалось Ckomoroh; 23.10.2014 в 17:25.
Ckomoroh вне форума Ответить с цитированием
Старый 23.10.2014, 17:58   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

формат какой?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 23.10.2014, 18:05   #3
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

Формат картинок? PNG
И использовать другие форматы я скорее всего не смогу. Нужна прозрачность фона.

Последний раз редактировалось Ckomoroh; 23.10.2014 в 18:09.
Ckomoroh вне форума Ответить с цитированием
Старый 23.10.2014, 18:11   #4
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

а размер у картинок какой?
f.hump вне форума Ответить с цитированием
Старый 23.10.2014, 18:29   #5
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

может доходить и до 6000x8000
Ckomoroh вне форума Ответить с цитированием
Старый 23.10.2014, 18:40   #6
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

считаем

10 х 6000 х 8000 х 4 = 1 920 000 000 байт распакованных картинок

ну или для картинки 6000 х 8000 нужно как минимум 192 метра памяти

Последний раз редактировалось f.hump; 23.10.2014 в 18:43.
f.hump вне форума Ответить с цитированием
Старый 23.10.2014, 18:49   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
может доходить и до 6000x8000
Фигасе!
Это что карта какая-то?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.10.2014, 19:25   #8
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

Спасибо всем за ответы. Что-то не подумал, что они хранятся распакованными.
Нет, это не карта.
Ckomoroh вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Максимум памяти,который использовал процесс при работе calypso Win Api 7 04.03.2014 09:35
При столкновении между image переместить другой Image Алексей_2012 Общие вопросы Delphi 1 07.03.2013 09:32
Ошибка доступа памяти, при работе с принятой строкой. Zeraim Работа с сетью в Delphi 11 26.01.2010 01:11
Утечка памяти при работе с GDI+ Ivan_32 Общие вопросы C/C++ 2 29.11.2009 00:12
Бешеное потребление виртуальной памяти при работе в Excel 2003 dikdm Microsoft Office Excel 2 28.04.2009 13:10