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 のコピーが提供され、メモリ リークの追跡が改善されます。

于 2008-09-23T04:01:03.290 に答える