有没有办法从运行的ruby进程转储内存中的对象?
答
一种快捷方式是ObjectSpace.each_object{|e| p e}
。你可以做一些测试来确定你想要保留的东西,或者统一对象。
答
对于1.9.2/1.9.3还有的heap_dump宝石,它可以被注入使用一个正在运行的进程gdb的(但更稳定是是将其包括在过程本身,没有性能开销)
它转储到对象的引用,而不是对象本身,但如果你进入战斗泄漏,这是可用
黯淡的房子为别人工作?我试了一下,它只是在最微不足道的程序上抛弃了核心。在Ubuntu上这是Ruby 1.8.6 – 2008-09-24 17:51:51