3

在获取此信息的同时终止进程会很好。

4

3 回答 3

2

一种快速而肮脏的方式是ObjectSpace.each_object{|e| p e}. 你可以做一些测试来确定你想保留什么,或者编组这些对象。

于 2008-09-22T18:25:41.770 回答
2

对于 1.9.2/1.9.3 有 heap_dump gem,可以使用 gdb 将它注入到正在运行的进程中(但更稳定的是将它包含在进程本身中,没有性能开销)

它转储对对象的引用,而不是对象本身,但是如果您要解决泄漏问题,这很有用

于 2012-10-04T20:50:35.347 回答
0

对于更硬核的人,还有BleakHouse,它为您提供了一个特殊的自定义编译的 ruby​​ 副本,具有更好的内存泄漏跟踪 powarz

于 2008-09-23T04:01:03.290 回答