Почему значение Mem Usage увеличивается со временем? - PullRequest
0 голосов
/ 05 июня 2009

У меня есть процесс, работающий в моей системе 24 часа в течение 45 дней. Утром количество потоков равно 20, а днем ​​число потоков равно 100, а вечером число потоков снова возвращается к 20. Но значения Mem Usage и VM не возвращаются к значениям, когда количество потоков было всего 20 ... Значения продолжают расти каждый день, пока я не перезапущу свою систему? что лежит в основе этого? пожалуйста, объясните мне ....

Заранее спасибо.

Anusha G

Ответы [ 4 ]

5 голосов
/ 05 июня 2009

Это может быть из-за утечек памяти и / или фрагментации памяти . Используйте некоторые инструменты профилирования памяти, чтобы понять это.

2 голосов
/ 05 июня 2009

Похоже, у вас утечка памяти. Без дополнительной информации невозможно сказать, почему.

1 голос
/ 05 июня 2009

У вас может быть небольшая утечка памяти в вашем коде, которая накапливается со временем. Каждый поток может пропускать немного памяти каждый раз при запуске. Потоки будут появляться и умирать, но память будет продолжать расти.

0 голосов
/ 05 июня 2009

Как уже упоминали другие, это утечка памяти, если вы используете Java, вы можете использовать профилировщики, такие как JProfiler, Yourkit Profiler, чтобы увидеть, где происходят утечки памяти. Если на других языках вы найдете способ профилирования этих приложений

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...