這更像是一個假設性問題,但我在網絡上熱切尋找答案一段時間。紅寶石使用堆棧進行內存管理嗎?
我讀過,編程語言使用堆存儲引用和堆棧值/數據。在ruby中,一切都是一個對象,我們可能只需要保存引用,ruby使用堆棧來進行內存管理還是隻堆?
在此先感謝:)
這更像是一個假設性問題,但我在網絡上熱切尋找答案一段時間。紅寶石使用堆棧進行內存管理嗎?
我讀過,編程語言使用堆存儲引用和堆棧值/數據。在ruby中,一切都是一個對象,我們可能只需要保存引用,ruby使用堆棧來進行內存管理還是隻堆?
在此先感謝:)
這可能取決於你說的Ruby的版本。 MRI 1.8.x行使用了堆。有關更多信息,請參閱Engine Yard blog post。
它可能有點晚,但這篇關於ruby 2.0垃圾收集的文章應該有助於任何希望更好地理解它的人。
http://patshaughnessy.net/2012/3/23/why-you-should-be-excited-about-garbage-collection-in-ruby-2-0
你瞭解一個編程語言的東西並不一定是真實的(甚至適用)任何其他的編程語言。 – 2011-12-28 05:46:55
謝謝Greg。那麼如果沒有直接的答案,任何可以指導我理解這些內容的參考文獻都會很有用。 – nkm 2011-12-28 07:13:25