[發明專利]臨界區加鎖方法、裝置、終端及存儲介質在審
| 申請號: | 201810987082.1 | 申請日: | 2018-08-28 |
| 公開(公告)號: | CN109271260A | 公開(公告)日: | 2019-01-25 |
| 發明(設計)人: | 馮凱文;陳卓;黨躍東;何瑋;鮑萬宇;倪忠俊 | 申請(專利權)人: | 百度在線網絡技術(北京)有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 北京品源專利代理有限公司 11332 | 代理人: | 孟金喆 |
| 地址: | 100085 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 臨界區 鎖狀態 存儲介質 訪問指令 加鎖 終端 原子操作 資源數據 相等 鎖定 響應 | ||
本發明實施例公開了一種臨界區加鎖方法、裝置、終端及存儲介質。該方法包括:若接收到臨界區中任一線程對共有資源的訪問指令,則獲取臨界區的鎖狀態參數的當前取值;通過原子操作方式執行比較所述鎖狀態參數的當前取值與所述鎖狀態參數的初始值是否相等,以及依據比較結果調整所述鎖狀態參數的取值,并依據比較結果響應所述訪問指令以及控制所述臨界區的鎖定狀態。通過本發明的技術方案,在保持臨界區的共有資源數據一致性的同時,可以提高系統的性能。
技術領域
本發明實施例涉及計算機技術領域,尤其涉及一種臨界區加鎖方法、裝置、終端及存儲介質。
背景技術
自動駕駛系統是一個高并發的系統,目前為了保證運行時數據的一致性,會采用大量鎖來對臨界區的數據進行保護,其中,臨界區是指一個訪問共用資源(例如:共用設備或是共用存儲器)的程序片段,而這些共用資源又無法同時被多個線程訪問的特性。例如,傳感驅動、感知和控制等多個算法模塊需要同時訪問定位模塊,則傳感驅動、感知和控制線程的相應線程構成臨界區。
但是現有的對臨界區的加鎖方式如互斥鎖等,同一時刻只能有一個線程對臨界區加鎖,會出現而過多的鎖等待,從而造成系統性能的下降。
發明內容
本發明實施例提供一種臨界區加鎖方法、裝置、終端及存儲介質,在保持臨界區的數據一致性的同時,可以提高系統的性能。
第一方面,本發明實施例提供了一種臨界區加鎖方法,包括:
若接收到臨界區中任一線程對共有資源的訪問指令,則獲取臨界區的鎖狀態參數的當前取值;
通過原子操作方式執行比較所述鎖狀態參數的當前取值與所述鎖狀態參數的初始值是否相等,以及依據比較結果調整所述鎖狀態參數的取值,并依據比較結果響應所述訪問指令以及控制所述臨界區的鎖定狀態。
第二方面,本發明實施例還提供了一種臨界區加鎖裝置,該裝置包括:
當前取值獲取模塊,用于若接收到臨界區中任一線程對共有資源的訪問指令,則獲取臨界區的鎖狀態參數的當前取值;
加鎖模塊,用于通過原子操作方式執行比較所述鎖狀態參數的當前取值與所述鎖狀態參數的初始值是否相等,以及依據比較結果調整所述鎖狀態參數的取值,并依據比較結果響應所述訪問指令以及控制所述臨界區的鎖定狀態。
第三方面,本發明實施例還提供了一種終端,該終端包括:
一個或多個處理器;
存儲裝置,用于存儲一個或多個程序;
當所述一個或多個程序被所述一個或多個處理器執行,使得所述一個或多個處理器實現第一方面中任意所述的臨界區加鎖方法。
第四方面,本發明實施例還提供了一種存儲介質,其上存儲有計算機程序,該程序被處理器執行時實現第一方面中任意所述的臨界區加鎖方法。
本發明實施例提供的臨界區加鎖方法、裝置、終端及存儲介質,終端在接收到臨界區中任一線程對共有資源的訪問指令,將獲取臨界區的鎖狀態參數的當前取值,采用原子操作方式執行鎖狀態參數的比較和調整,保證了所記錄的鎖狀態參數的取值的準確性;并依據比較結果確定臨界區的鎖狀態,以及依據鎖狀態對接收的訪問指令給予響應或拒絕。避免了現有的對臨界區加鎖方式,若存在一個線程對臨界區加了鎖,其他鎖都必須等待,造成臨界區大量鎖處于等待狀態,從而使系統性能下降的問題,在保持臨界區的共有資源數據一致性的同時,可以提高系統的性能。
附圖說明
為了更清楚地說明本發明實施例的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,應當理解,以下附圖僅示出了本發明的某些實施例,因此不應被看作是對范圍的限定,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他相關的附圖。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于百度在線網絡技術(北京)有限公司,未經百度在線網絡技術(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810987082.1/2.html,轉載請聲明來源鉆瓜專利網。





