Есть ли способ вывести объекты в память из запущенного процесса ruby? - PullRequest
3 голосов
/ 22 сентября 2008

Уничтожение процессов при получении этой информации было бы хорошо.

Ответы [ 3 ]

2 голосов
/ 05 октября 2012

Для 1.9.2 / 1.9.3 есть гем heap_dump, его можно внедрить в работающий процесс с использованием gdb (но более стабильным было включение его в сам процесс, без снижения производительности)

Он сбрасывает ссылки на объекты, а не на сами объекты, но это полезно, если вы боретесь с утечками

2 голосов
/ 22 сентября 2008

Быстрый и грязный способ будет ObjectSpace.each_object{|e| p e}. Вы можете сделать несколько тестов, чтобы определить, что вы хотите сохранить, или маршалировать объекты.

0 голосов
/ 23 сентября 2008

Для более хардкора есть также BleakHouse , который дает вам специально скомпилированную копию ruby ​​с улучшенным отслеживанием утечек памяти powarz

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