假設我在做這樣的事情(從Active Record Querying guide)什麼時候在rails中釋放一個悲觀的鎖?
Item.transaction do
i = Item.first(:lock => true)
i.name = 'Jones'
i.save
end
是鎖在事務結束時自動釋放?我查看了Active Query指南和ActiveRecord::Locking::Pessimistic docs,並且找不到它在哪裏明確說明了鎖的釋放位置。
感謝。我使用的是mySQL,所以我在那些文檔中查找它,並且說事務提交或回滾時鎖被釋放。我不知道它是如何在交易之外運作的。 – user26270 2010-07-08 18:48:36
「鎖定不是導軌的函數」 - 樂觀鎖定是,而悲觀鎖定基於DB的低級支持。 – Felixyz 2012-12-19 10:38:09
它鎖定整個數據庫??! – AjaxLeung 2016-10-28 02:23:12