死鎖的概念

 

    什么是死鎖呢? 其實(shí)我們生活中也有很多類似死鎖的例子。 我先舉一個生活中的例子:過年回家,父親買了一把水彈槍,兒子和侄子爭搶著要先玩,誰也不讓誰,拆開包裝后,一個搶了槍, 一個逮住了子彈和彈夾。兩個都爭著要先玩,但是都互不相讓。結(jié)果兩個人都玩不了。如果兒子要先玩,就必須讓侄子把子彈和彈夾給他,如果侄子要先玩,就必須讓兒子把槍給侄子。他們就這樣對峙了十幾分鐘,互不相讓。 我出來調(diào)停,讓兒子把槍先給侄子玩,每個人玩十分鐘。然后兩個人開開心心一起玩起來。其實(shí)這就是一個活生生的死鎖(Dead Lock)的例子。

 

   我們再來看看數(shù)據(jù)庫死鎖的概念所謂死鎖,是指兩個會話,每個會話都持有另外一個會話想要的資源,因爭奪資源而造成的一種互相等待的現(xiàn)象,此時就會出現(xiàn)死鎖,若無外力作用,它們都將無法推進(jìn)下去。此時稱系統(tǒng)處于死鎖狀態(tài)或系統(tǒng)產(chǎn)生了死鎖,這些永遠(yuǎn)在互相等待的進(jìn)程稱為死鎖進(jìn)程。Oracle對于死鎖采取的策略是回滾其中一個事務(wù),讓另外一個事務(wù)順利進(jìn)行。

 

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式