• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦 > 學習電腦 > 操作系統 > 操作系統基礎知識 > 操作系統鎖的種類

    操作系統鎖的種類

    時間: 佳洲1085 分享

    操作系統鎖的種類

      操作系統中包含了多種不同類型的鎖。下面由學習啦小編為大家整理了操作系統的鎖的種類相關知識,希望對大家有幫助!

      操作系統鎖的種類

      鎖是線程同步時的一個重要的工具,然而操作系統中包含了多種不同的鎖,各種鎖之間有什么不同呢?

      操作系統鎖的種類1、信號量(Semaphore)

      信號量分為二元信號量和多元信號量,所謂二元信號量就是指該信號量只有兩個狀態,要么被占用,要么空閑;而多元信號量則允許同時被N個線程占有,超出N個外的占用請求將被阻塞。信號量是“系統級別”的,即同一個信號量可以被不同的進程訪問。

      操作系統鎖的種類2、互斥量 (Mutex)

      和二元信號量類似, 唯一不同的是,互斥量的獲取和釋放必須是在同一個線程中進行的。如果一個線程去釋放一個并不是它所占有的互斥量是無效的。而信號量是可以由其它線程進行釋放的。

      操作系統鎖的種類3、臨界區(Critical Section)

      術語中,把臨界區的鎖的獲取稱為進入臨界區,而把鎖的釋放稱為離開臨界區。臨界區是“進程級別”的,即它只在本進程的所有線程中可見,其它性質與互斥量相同(即誰獲取,誰釋放)

      操作系統鎖的種類4、讀寫鎖(Read-Write Lock)

      適 用于一個特定的場合。比如對于一段線程間訪問的數據,如果程序大部分時間都是在讀取,而只有很少的時間才會寫入,那么使用前面幾種鎖時,每次讀取也是同樣 要申請鎖的,而這時其它的線程就無法再對此段數據進行讀取。可是,多個線程同時對一段數據進行讀取時,是不存在同步問題的,那么這些讀取時設置的鎖就影響 了程序的性能。讀寫鎖的出現就是為了解決這個問題的。

      對于一個讀寫鎖,有兩種獲取方式:共享(Shared)或獨占 (Exclusive)。如果當前讀寫鎖處于空閑狀態,那么當多個線程同時以共享方式訪問該讀寫鎖時,都可以成功;而此時如果一個線程以獨占的方式訪問該 讀寫鎖,那么它會等待所有共享訪問都結束后才可以成功。在讀寫鎖被獨占訪問的過程中,再次共享和獨占請求訪問該鎖,都會進行等待狀態。

      操作系統鎖的種類5、條件變量(Condition Variable)

      條件變量相當于一種通知機制。多個線程可以設置等待該條件變量,而一旦另外的線程設置了該條件變量(相當于喚醒條件變量)后,多個等待的線程就可以繼續執行了。

    3626765 主站蜘蛛池模板: 强行扒开双腿猛烈进入| 一本色综合网久久| 久久精品国产精品亚洲毛片 | 国内自产少妇自拍区免费| 好男人神马视频在线观看| 成年人性生活视频| 日出水了特别黄的视频| 最近免费中文字幕大全高清10| 永久免费无码网站在线观看| 美女和男生一起差差差| 西西人体高清444rt·wang| 91成人午夜性a一级毛片| 麻豆久久婷婷综合五月国产| 人人澡人人澡人人澡| 国产精品2019| 青青草成人影院| 边吃奶边摸下我好爽视频免费| 青青青国产依人精品视频| 金8天国欧美视频hd黑白| 色戒7分27秒大尺度在线| 色www永久免费网站| 精品国产青草久久久久福利| 精品久久久久久久免费人妻| 欧美综合自拍亚洲综合图片区| 欧美人与动人物姣配xxxx| 日本阿v精品视频在线观看| 成人浮力影院免费看| 大战孕妇12p| 国产成人小视频| 午夜精品久久久久久| 亚洲精品无码不卡| 久久综合久久鬼色| 一级片在线播放| 色多多福利网站老司机| 色婷婷综合久久久| 激情久久av一区av二区av三区| 欧洲精品一卡2卡三卡4卡乱码| 成年在线网站免费观看无广告| 国模精品一区二区三区| 国产好深好硬好爽我还要视频| 免费大学生国产在线观看p|