| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > как управлять памятью приложения |
| Автор: mrgloom 16.4.2012, 10:12 |
| мне надо сделать так, чтобы программа не занимала больше отведенного пользователем размера памяти, можно завести некий глобальный счётчик увеличивать его размер там где есть какое либо динамическое выделение памяти(а как быть с мелкими всякими переменными которые выделяются статически?) и обращаться к нему, если заняли максимальную память дальше никаких действий совершить не можем или что то освобождаем. но может есть какой то более удобный метод управления общей памятью приложения? |
| Автор: borisbn 16.4.2012, 11:12 |
| Какая ОС ? Кроссплатформенного решения нет. |
| Автор: mrgloom 16.4.2012, 12:24 |
| windows |
| Автор: alexvs11 16.4.2012, 12:58 |
| для динамической памяти можно перегрузить глобальные операторы new delete и что-нибудь там считать |
| Автор: borisbn 16.4.2012, 13:13 |
вот это, например http://stackoverflow.com/questions/282194/how-to-get-memory-usage-under-windows-in-c http://stackoverflow.com/questions/4870893/need-help-with-getting-the-current-memory-on-a-program если совсем уж лениво переопределять new/delete, то можно проверять, сколько кушает программа памяти тупо по таймеру))) |
| Автор: mrgloom 16.5.2013, 09:56 |
| может быть сделать так что несущественные переменные просто не учитываются, а те которые занимают какой то объем при их выделении или в конструкторе увеличивается какой либо глобальный счётчик? Добавлено через 1 минуту и 33 секунды кстати еще вопрос что значит private bytes и working set ? private bytes это как раз в общем понимании память занимаемая программой? |
| Автор: Dem_max 16.5.2013, 18:12 | ||
http://msdn.microsoft.com/en-us/library/windows/desktop/ms686234(v=vs.85).aspx
|