![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
TarasBer |
![]()
Сообщение
#1
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
Диспетчер задач говорит, что память нехило течёт. Что делать? Тут (http://forum.sources.ru/index.php?showtopic=238841&view=showall) сказали, что это винда мудрит, что память освободится потом. Так что - не удалять тогда ненужные окна, а оставлять на будущее, когда снова появятся? Их кол-во может достигать бесконечности и заранее, при старте, создать все нужные нельзя. Добавлено через 4 мин. Память дошла до 12 метров и успокоилась. Остался только один вопрос - как тогда отлаживать программу на предмет утечек? -------------------- |
![]() ![]() |
IUnknown |
![]()
Сообщение
#2
|
![]() a.k.a. volvo877 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата Остался только один вопрос - как тогда отлаживать программу на предмет утечек? В смысле, проверять, не текут ли хэндлы? Сделай отображение столбца "USER Objects" в менеджере задач, и смотри, не текут ли они, а не Working Set ... |
-TarasBer- |
![]()
Сообщение
#3
|
Гость ![]() |
> Сделай отображение столбца "USER Objects" в менеджере задач
Это где? Это из винды-семёрки? Ну там есть монитор ресурсов, на вкладке "память" столбики "Завершено" (13 МБ), "Рабочий набор" (16МБ), "Общий" (4МБ), "Частный" (12МБ) Куда смотреть? |
IUnknown |
![]()
Сообщение
#4
|
![]() a.k.a. volvo877 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
-TarasBer- |
![]()
Сообщение
#5
|
Гость ![]() |
А, понял.
Память жрётся, кол-во объектов - не меняется, стабильно. Что за чудеса? |
IUnknown |
![]()
Сообщение
#6
|
![]() a.k.a. volvo877 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: ![]() ![]() ![]() |
Проверял все типы объектов, я надеюсь? И хэндлы, и USER-objects, и GDI-objects (может, чего-нибудь не закрывается)?
Запустил простейшую WinAPI программку, которая по нажатию кнопки запускает вот тот самый вечный цикл создания/разрушения окна - так память даже не шелохнулась, прождал около 10 минут - ни одна цифра не поменялась, ни в стандартном Task Manager-е, ни в ProcessExplorer-е от Марка Руссиновича... |
-TarasBer- |
![]()
Сообщение
#7
|
Гость ![]() |
Да, количество дескрипторов тоже не меняется, а память куда-то течёт, причём только в начале, потом упирается в некий потолок и остаётся на нём.
|
-TarasBer- |
![]()
Сообщение
#8
|
Гость ![]() |
В общем, я обнаружил, что память течёт только при запуске из среды и только под вин7. При запуске из проводника глюка нет.
Будем думать дальше. |
![]() ![]() |
![]() |
Текстовая версия | 23.06.2025 21:58 |