|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
16.09.2015, 09:40 | #11 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
Вы просто ничего не понимаете в управлении памятью в .net.
Можете расслабиться, утечек нет
Благодарить в репутацию. Проклинать — туда же
|
16.09.2015, 11:35 | #12 |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
Может быть, я ничего не понимаю, но дело в том что программа работает круглосуточно с непрерывным получением сообщений, около 3-4 миллион в день.
При таком раскладе когда растет память которую я вижу в TASK менеджере производительность приложения падает, при том память растет и растет и не высвобождается. Я упростил приложение по максимум, оно только принимает сообщение и записывает его в базу и с каждой минутой я уже не могу принять большое количество сообщений с ростом памяти. Если на первых минутах я обрабатываю все быстро, то по истечению времени все становиться медленнее. http://prntscr.com/8gwov7 На скриншоте видно как количество записей в базе становиться меньше и за 45 минут приложение выделило для себя уже 1.7к памяти и продолжает выделять. Последний раз редактировалось coNsept; 16.09.2015 в 11:52. |
16.09.2015, 12:07 | #13 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
GC.Collect() к какому результату привел?
Благодарить в репутацию. Проклинать — туда же
|
16.09.2015, 12:12 | #14 |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
с GC.Collect приложение иногда просто падает, не часто но такое было несколько раз.
з.ы. А с каким промежутком вообще вызывать GC.Collect? Последний раз редактировалось coNsept; 16.09.2015 в 12:14. |
16.09.2015, 12:14 | #15 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
Вы же его не в цикле вызывали, а только 2 раза подряд, когда приложение уже отъело ~1.5гб памяти, ага?
Благодарить в репутацию. Проклинать — туда же
|
16.09.2015, 12:14 | #16 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,792
|
Цитата:
I'm learning to live...
|
|
16.09.2015, 12:16 | #17 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
Сборка мусора сама себя запустит, когда .net посчитает это необходимым (а пока приложение постоянно сильно занято, и объем свободной оперативной памяти достаточно велик .net вряд ли станет расходовать процессорное время на сборку мусора).
ТС по ходу просто тысячи объектов в секунду в цикле создает, а потом удивляется "куда делась вся память".
Благодарить в репутацию. Проклинать — туда же
|
16.09.2015, 12:19 | #18 |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
Я не в цикле создаю тысячу объектов .
Есть некое событие и оно в секунду вызывается около 300-400 раз. При каждом вызове я входящие данные записываю в базу, это все что я делаю. |
16.09.2015, 12:47 | #19 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
лямбды у вас там есть? каждая лямбда ведет к объекту.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
16.09.2015, 12:49 | #20 |
Форумчанин
Регистрация: 18.01.2012
Сообщений: 975
|
код в студию (новый, на ado)
Благодарить в репутацию. Проклинать — туда же
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
утечка памяти | polin11 | Общие вопросы C/C++ | 10 | 18.08.2015 18:12 |
Утечка памяти | Juffin | Общие вопросы Delphi | 3 | 02.11.2010 12:11 |
Анимация (большая Нагрузка на процессор) | BuT@JL | Мультимедиа в Delphi | 6 | 24.08.2009 09:43 |
Преобразование типов - большая нагрузка на ЦП | ArtUrlWWW | Общие вопросы .NET | 1 | 19.05.2009 14:41 |
утечка памяти в С++ | vengo | Общие вопросы C/C++ | 9 | 10.06.2008 21:24 |