Как определить объем используемой памяти - PullRequest
1 голос
/ 30 августа 2011

В любой данный момент времени, как я могу получить объем памяти, используемый каждым потоком?

Ответы [ 3 ]

2 голосов
/ 30 августа 2011

Если вам нужен только профилировщик кучи , рассмотрите инструменты производительности Google со своим собственным распределителем TCMalloc.

http://code.google.com/p/google-perftools/

Альтернативным высокопроизводительным распределителем является jemalloc, который предоставляет статистические отчеты, включая сведения о кэш-памяти каждого потока, с malloc_stats_print()

http://www.canonware.com/jemalloc/index.html

2 голосов
/ 30 августа 2011

Нельзя, куча распределяется между всеми потоками в процессе.

0 голосов
/ 31 августа 2011

Чтобы проверить размер стека потока, вы можете использовать непереносимое расширение GNU pthread_getattr_np а также вы можете проверить / proc / self / maps (или / proc / PID / maps), но этот способ более сложный.

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