建议锁
一個(gè)建議鎖是一個(gè)cooperative lock。那就是說(shuō),一個(gè)建議鎖沒(méi)有能力阻止數(shù)據(jù)的訪問(wèn),但是所有的客戶端可以使用一種溝通的談話機(jī)制來(lái)合作使用一種資源。
使用如下的GET_LOCK()函數(shù)來(lái)獲得建議鎖:
》select GET_LOCK(‘my lock’,5);
第一個(gè)參數(shù)表明被鎖的名字,第二個(gè)參數(shù)是超時(shí)的值表明多長(zhǎng)的時(shí)間等待鎖如果它不能直接獲得。如果成功將返回1,如果超時(shí)發(fā)送將返回0和鎖不能獲得。如果一個(gè)錯(cuò)誤發(fā)生,返回NULL。
使用RELEASE_LOCK()來(lái)釋放鎖。
有兩函數(shù)來(lái)檢測(cè)建議鎖的狀態(tài):
1.IS_FREE_LOCK(lock_name)返回1,如果這個(gè)名字不是被鎖,如果被鎖返回0,如果發(fā)送錯(cuò)誤返回NULL
2.IS_USED_LOCK(lock_name)返回連接的ID,返回NULL如果名字沒(méi)有被鎖
與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)