我想弄清楚在ruby進程中內存使用情況的問題。我嘗試使用ObjectSpace模塊獲取ruby進程的堆轉儲,以瞭解發生了什麼。令人費解的是,linux中的「top」命令報告該進程使用了17.8 GB的虛擬內存和15 GB的常駐內存。但是,堆轉儲的大小隻有2.7-2.9 GB左右。Ruby進程內存結構
基於Ruby文檔,Objectspace.dump_all方法將ruby堆的內容轉儲爲JSON。
我無法理解什麼是佔用內存的其餘部分。如果有人能幫助我理解發生的事情,這將是有益的。
謝謝。
今年的[Tenderlove在Rubyconf.au上的演講](https://www.youtube.com/watch?v=nAEt36XNtAE)可能會有幫助。 – spickermann