• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 297,  comments - 15,  trackbacks - 0
            一、活鎖 
            如果事務(wù)T1封鎖了數(shù)據(jù)R,事務(wù)T2又請(qǐng)求封鎖R,于是T2等待。T3也請(qǐng)求封鎖R,
            當(dāng)T1釋放了R上的封鎖之后系統(tǒng)首先批準(zhǔn)了T3的請(qǐng)求,T2仍然等待。然后T4又
            請(qǐng)求封鎖R,當(dāng)T3釋放了R上的封鎖之后系統(tǒng)又批準(zhǔn)了T4的請(qǐng)求,...,T2有可
            能永遠(yuǎn)等待,這就是活鎖的情形,避免活鎖的簡(jiǎn)單方法是采用先來(lái)先服務(wù)的策略。
            二、死鎖 
            如果事務(wù)T1封鎖了數(shù)據(jù)R1,T2封鎖了數(shù)據(jù)R2,然后T1又請(qǐng)求封鎖R2,因T2已
            封鎖了R2,于是T1等待T2釋放R2上的鎖。接著T2又申請(qǐng)封鎖R1,因T1已封鎖了R1,
            T2也只能等待T1釋放R1上的鎖。這樣就出現(xiàn)了T1在等待T2,而T2又在等待T1的局面,
            T1和T2兩個(gè)事務(wù)永遠(yuǎn)不能結(jié)束,形成死鎖。 
            1. 死鎖的預(yù)防
            在數(shù)據(jù)庫(kù)中,產(chǎn)生死鎖的原因是兩個(gè)或多個(gè)事務(wù)都已封鎖了一些數(shù)據(jù)對(duì)象,然后又都
            請(qǐng)求對(duì)已為其他事務(wù)封鎖的數(shù)據(jù)對(duì)象加鎖,從而出現(xiàn)死等待。防止死鎖的發(fā)生其實(shí)就
            是要破壞產(chǎn)生死鎖的條件。預(yù)防死鎖通常有兩種方法: 
            ① 一次封鎖法  
            一次封鎖法要求每個(gè)事務(wù)必須一次將所有要使用的數(shù)據(jù)全部加鎖,否則就不能繼續(xù)執(zhí)行。
            
            一次封鎖法雖然可以有效地防止死鎖的發(fā)生,但也存在問(wèn)題,一次就將以后要用到的全
            部數(shù)據(jù)加鎖,勢(shì)必?cái)U(kuò)大了封鎖的范圍,從而降低了系統(tǒng)的并發(fā)度。
            ② 順序封鎖法 
            順序封鎖法是預(yù)先對(duì)數(shù)據(jù)對(duì)象規(guī)定一個(gè)封鎖順序,所有事務(wù)都按這個(gè)順序?qū)嵭蟹怄i。
            
            順序封鎖法可以有效地防止死鎖,但也同樣存在問(wèn)題。事務(wù)的封鎖請(qǐng)求可以隨著事務(wù)的
            執(zhí)行而動(dòng)態(tài)地決定,很難事先確定每一個(gè)事務(wù)要封鎖哪些對(duì)象,因此也就很難按規(guī)定的
            順序去施加封鎖。
             
            可見(jiàn),在操作系統(tǒng)中廣為采用的預(yù)防死鎖的策略并不很適合數(shù)據(jù)庫(kù)的特點(diǎn),因此DBMS在
            解決死鎖的問(wèn)題上普遍采用的是診斷并解除死鎖的方法。
            
             2. 死鎖的診斷與解除
             
            ① 超時(shí)法
            
             如果一個(gè)事務(wù)的等待時(shí)間超過(guò)了規(guī)定的時(shí)限,就認(rèn)為發(fā)生了死鎖。超時(shí)法實(shí)現(xiàn)簡(jiǎn)單,但
            其不足也很明顯。一是有可能誤判死鎖,事務(wù)因?yàn)槠渌蚴沟却龝r(shí)間超過(guò)時(shí)限,系統(tǒng)會(huì)
            誤認(rèn)為發(fā)生了死鎖。二是時(shí)限若設(shè)置得太長(zhǎng),死鎖發(fā)生后不能及時(shí)發(fā)現(xiàn)。
             
            ② 等待圖法
             
            事務(wù)等待圖是一個(gè)有向圖G=(T,U)。 T為結(jié)點(diǎn)的集合,每個(gè)結(jié)點(diǎn)表示正運(yùn)行的事務(wù);U為
            邊的集合,每條邊表示事務(wù)等待的情況。若T1等待T2,則T1、T2之間劃一條有向邊,從T1
            指向T2。事務(wù)等待圖動(dòng)態(tài)地反映了所有事務(wù)的等待情況。并發(fā)控制子系統(tǒng)周期性地(比如
            每隔1分鐘)檢測(cè)事務(wù)等待圖,如果發(fā)現(xiàn)圖中存在回路,則表示系統(tǒng)中出現(xiàn)了死鎖。
             
            DBMS的并發(fā)控制子系統(tǒng)一旦檢測(cè)到系統(tǒng)中存在死鎖,就要設(shè)法解除。通常采用的方法是選擇
            一個(gè)處理死鎖代價(jià)最小的事務(wù),將其撤消,釋放此事務(wù)持有的所有的鎖,使其它事務(wù)得以繼續(xù)
            運(yùn)行下去。當(dāng)然,對(duì)撤消的事務(wù)所執(zhí)行的數(shù)據(jù)修改操作必須加以恢復(fù)。
            posted on 2012-06-08 17:15 chatler 閱讀(1061) 評(píng)論(0)  編輯 收藏 引用 所屬分類: OS
            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(10)

            隨筆分類(307)

            隨筆檔案(297)

            algorithm

            Books_Free_Online

            C++

            database

            Linux

            Linux shell

            linux socket

            misce

            • cloudward
            • 感覺(jué)這個(gè)博客還是不錯(cuò),雖然做的東西和我不大相關(guān),覺(jué)得看看還是有好處的

            network

            OSS

            • Google Android
            • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
            • os161 file list

            overall

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久精品国产91久久麻豆自制| 久久久久亚洲Av无码专| 国产精品岛国久久久久| 久久久久久国产精品无码下载 | 日韩电影久久久被窝网| 亚洲国产天堂久久综合网站| 国产精品久久久久影院嫩草| 久久99国产乱子伦精品免费| 久久久久99精品成人片直播| 蜜臀av性久久久久蜜臀aⅴ| 亚洲AV无码1区2区久久| 少妇久久久久久久久久| 久久亚洲AV成人无码电影| 久久国产精品一国产精品金尊 | 国产精品一区二区久久国产| 欧美一区二区三区久久综| 日本人妻丰满熟妇久久久久久| 无码国内精品久久人妻蜜桃| 亚洲精品乱码久久久久久蜜桃图片 | 久久精品国产亚洲网站| 久久久久久久尹人综合网亚洲| 人人狠狠综合久久亚洲88| 国产精品99久久久久久董美香| 精品久久久无码中文字幕天天| 欧美激情精品久久久久久久九九九 | 久久精品亚洲中文字幕无码麻豆 | 亚洲天堂久久精品| 久久久久噜噜噜亚洲熟女综合| 精品久久久久成人码免费动漫| 无码人妻少妇久久中文字幕蜜桃| 久久国产欧美日韩精品| 26uuu久久五月天| 久久综合色老色| 国产精品女同久久久久电影院| 狠狠久久综合| 亚洲中文字幕无码久久2017| 国产精品一久久香蕉产线看| 天天做夜夜做久久做狠狠| 国内精品久久久久久久97牛牛| 精品久久久久久国产免费了| 综合网日日天干夜夜久久|