Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Создание нового bitmap Требует много оперативной памяти C#

byfn oiu Знаток (361), закрыт 4 года назад
можно ли заменять bitmap или как то чистить оперативную память C#

Вот скриншот кода:
Лучший ответ
... Гений (84839) 4 года назад
Чтобы память освободилась "с Вашей подсказкой" используйте using, а так сборщик мусора её освободит сам.

Но сдаётся мне основная проблема не в этом а во внутреннем цикле while(test5==false). У Вас внутренний цикл суммарно тормозит поток на 3 секунды. Если на каждый пиксель тратить 3 секунды, то при изображении 815x157 это займет более месяца =). При этом ещё делаете Sleep потоку формы => форма просто перестаёт обрабатывать события (щелки, перерисовку, изменение размеров и т. д.) на ВСЁ это время.

Что делать -
нормальный алгоритм проверки
поиск убирать в поток, Sleep убрать из внутреннего цикла.
(в _крайнем_ случае Application.DoEvents() в цикле)
byfn oiuЗнаток (361) 4 года назад
Можешь показать пример
... Гений (84839) С using у Вас пример буквально в коде. Что Вы вообще хотели от внутреннего цикла while(test5==false)?
byfn oiuЗнаток (361) 4 года назад
цикл while нужен для дальнейшего кода там без него не как
... Гений (84839) Что значит "никак"? По мне так он выглядит так-себе. Вопрос что Вы вообще хотели от внутреннего цикла.
Остальные ответы
⎛⎝ṦҜẎ₦Ễ₮⎠⎞ Просветленный (38177) 4 года назад
Читай тут
cyberforum.ru/csharp-beginners/thread447054.html
Источник: cyberforum.ru/csharp-beginners/thread44
Похожие вопросы