Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.95/64: Рейтинг темы: голосов - 64, средняя оценка - 4.95
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 26
1

Как узнать, в процесе отладки, сколько памяти занимает программа?

14.07.2012, 21:56. Просмотров 13078. Ответов 13
Метки нет (Все метки)

Вот чтобы проследить за тем сколько и когда программа занимает и какое количество килобайт под капие переменные.... Чтобы увидеть что занимается память при выделении динамической памяти и освобождается при удалении.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.07.2012, 21:56
Ответы с готовыми решениями:

Как узнать сколько программа занимает памяти ?
открываю Connect с Access (ADO) по таймеру идет Execute на UPDATE или INSERT это жутко жрет...

Как узнать, сколько байтов памяти занимает массив
Я за Си сижу уже.. полчаса.. встала задача: узнать количество памяти, который занимает массив,...

Как узнать сколько байтов в памяти занимает объект?
Есть ли в Java аналог sizeOf?

Как узнать сколько памяти занимает таблица и каждый столбец в таблице
Как узнать сколько памяти занимает таблица и каждый столбец в таблице Access?

13
13 / 13 / 7
Регистрация: 19.05.2012
Сообщений: 46
14.07.2012, 22:28 2
Операция sizeof определяет размер переменной в байтах:
C++
1
2
int x=5;
cout << sizeof x << endl;
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 26
14.07.2012, 22:52  [ТС] 3
Это я знаю, а так чтобы сразу видеть по всем переменным, в виде каких то таблиц...
0
69 / 63 / 5
Регистрация: 09.06.2012
Сообщений: 291
15.07.2012, 17:46 4
создайте переменные разных типов,и делайте sizeof(переменная) в чем собственно проблема
0
2551 / 1316 / 177
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
15.07.2012, 17:50 5
Кто-нибудь из ответивших может мне объяснить связь между вопросом ТС(в частности про динамическую память) и выводом sizeof-а?

zinjvi, ОС?
0
DU
1492 / 1138 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
15.07.2012, 17:50 6
для этого есть специальные инструменты: профайлеры, мониторы и т.п.
они все показывают и рассказывают. если в маленькой программе это можно и на глаз оценить (но непонятно, зачем в маленьких программах это знать), то в большой - врятли получится нормально это сделать.
вам для каких целей все это нужно знать?
0
бжни
2467 / 1676 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
15.07.2012, 18:06 7
в этих ваших юнихах proc/PID/memstat, какая-та из утилит valgrind'a
в виндах - диспетчер задач или Process Explorer
0
Эксперт С++
8291 / 6046 / 601
Регистрация: 10.12.2010
Сообщений: 28,126
Записей в блоге: 25
15.07.2012, 20:12 8
Ну если надо проверить дает ли код утечку я делаю так помещаю этот код в цикл, допустим:
C++
1
for(ini i=0;i<10000;i++) {/*Код*/}
и смотрю в диспетчер задач растет ли память.
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 26
15.07.2012, 20:57  [ТС] 9
Цитата Сообщение от soon Посмотреть сообщение
zinjvi, ОС?
Операционная система? Виндовс.

Добавлено через 7 минут
Цитата Сообщение от DU Посмотреть сообщение
профайлеры, мониторы и т.п.
а можно конкретные названия программ , в гоогл ничего корректного не нашел...

Нужно чтобы следить за тем сколько программа ест памяти... просто хочется знать какая переменная или какой массив ест сколько памяти...
0
бжни
2467 / 1676 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
15.07.2012, 21:04 10
Цитата Сообщение от zinjvi Посмотреть сообщение
просто хочется знать какая переменная или какой массив ест сколько памяти...
а это и так не очевидно?
0
DU
1492 / 1138 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
16.07.2012, 10:15 11
что-то туго у вас с поиском. вот пару запросов, и везде что-то советуют или сразу ссылки на конкретные профайлеры:

http://www.google.ru/search?hl... JoBENUCKAM

http://www.google.ru/#sclient=... .osb&cad=b
0
Заблокирован
Автор FAQ
16.07.2012, 14:38 12
Цитата Сообщение от zinjvi Посмотреть сообщение
Вот чтобы проследить за тем сколько и когда программа занимает и какое количество килобайт под капие переменные.... Чтобы увидеть что занимается память при выделении динамической памяти и освобождается при удалении.
-всё очень просто если дело касается windows - вызваем диспетчер задач и смотрим столбцы Память и Пиковое использование памяти (см крин). Постоянное увеличение счётчика в графе Пиковое использование - верный признак утечки. Также следует поглядывать на динамику изменения памяти. Т.е. если в программе был объект на 3 Мб и после какого-то момента (скажем нажатия кнопки - предполагалась очистка а память приложения не уменьшилась на те самые 3 Мб - это также признак того, что объект ещё привязан к нашему алгоритму и забирает ресурсы ОС).
0
Миниатюры
Как узнать, в процесе отладки, сколько памяти занимает программа?  
Делаю внезапно и красиво
Эксперт С++
1309 / 1224 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
16.07.2012, 16:14 13
Используй контейнеры, вместо массивов и интеллектуальные указатели и тебе не придётся парить мозг, размышляя о наличии утечек.
0
Эксперт С++
8291 / 6046 / 601
Регистрация: 10.12.2010
Сообщений: 28,126
Записей в блоге: 25
19.07.2012, 23:16 14
не придётся парить мозг, размышляя о наличии утечек.
Ага у мозга будет другое занятие поразмышлять над тем какой из умных указателей применить
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.07.2012, 23:16

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как узнать, сколько памяти занимает тот или иной элемент программы?
Товарищи, подскажите, пожалуйста, ответы на следующие вопросы: 1) Есть какие-либо средства...

Узнать сколько занимает памяти объект.
Здравствуйте. Кто нибудь в курсе, как можно узнать сколько &quot;весит&quot; экземпляр написанного мной...

Определить, сколько места занимает программа в памяти
как определить, сколько места занимает программа в памяти (без учета сегмента стека). ;...

А как узнать, сколько памяти заняла программа?
К примеру, вот такой код for (i = 0; i&lt;5; i++) { n += n; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.