[發明專利]一種無鎖數據緩沖區及其使用方法在審
| 申請號: | 201310409758.6 | 申請日: | 2013-09-10 |
| 公開(公告)號: | CN104424123A | 公開(公告)日: | 2015-03-18 |
| 發明(設計)人: | 洪承煜;楊尚琴;許自龍;龐世明;宋志翔;陳科 | 申請(專利權)人: | 中國石油化工股份有限公司;中國石油化工股份有限公司石油物探技術研究院 |
| 主分類號: | G06F12/08 | 分類號: | G06F12/08;G06F1/32 |
| 代理公司: | 北京思創畢升專利事務所 11218 | 代理人: | 郭韞 |
| 地址: | 100728 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據 緩沖區 及其 使用方法 | ||
1.一種無鎖數據緩沖區,其特征在于:所述無鎖數據緩沖區包括數據存儲區和數據管理區;
所述數據存儲區用于存儲數據;
所述數據管理區包括:指向緩沖區開始處最小數據單元的指針、指向緩沖區結尾處最小數據單元的指針、緩沖區中所有最小數據單元的地址存儲數組、當前被使用的最小數據單元在地址存儲數組中的位置、緩沖區中最小數據單元個數和最小數據單元鏈表;
所述指向緩沖區開始處最小數據單元的指針用于指向緩沖區的第一個最小數據單元;
所述指向緩沖區結尾處最小數據單元的指針用于指向緩沖區的最后一個最小數據單元;
所述緩沖區中所有最小數據單元的地址存儲數組用于存儲緩沖區中所有最小數據單元的地址;
所述當前被使用的最小數據單元在地址存儲數組中的位置用于存儲當前被使用的最小數據單元在地址存儲數組中的位置;
所述緩沖區中最小數據單元個數用于存儲緩沖區中最小數據單元個數N;
所述緩沖區中最小數據單元個數N是固定的。
2.根據權利要求1所述的無鎖數據緩沖區,其特征在于:所述最小數據單元鏈表包括N個最小數據單元,每個所述最小數據單元包括:指向數據的指針、最小數據單元狀態標志和指向下一個最小數據單元的指針;
所述指向數據的指針用于指向該最小數據單元對應的存儲在所述數據存儲區內的數據集;
所述最小數據單元狀態標志用于表示最小數據單元的狀態,所述狀態為下面三種情況之一:最小數據單元正在使用、最小數據單元使用完、最小數據單元可以使用;
所述指向下一個最小數據單元的指針用于指向最小數據單元鏈表中與該最小數據單元相鄰的下一個最小數據單元。
3.根據權利要求2所述的無鎖數據緩沖區,其特征在于:每個所述最小數據單元通過所述指向數據的指針與所述數據存儲區內的一個數據集一一對應。
4.根據權利要求3所述的無鎖數據緩沖區,其特征在于:通過無鎖機制使得最小數據單元鏈表中的最小數據單元一次只被一個線程獲取并使用。
5.一種使用權利要求4所述無鎖數據緩沖區的方法,其特征在于:包括:
(1)創建兩個無鎖數據緩沖區,給每個無鎖數據緩沖區內的最小數據單元個數進行賦值;
(2)讀線程獲取一個空的無鎖數據緩沖區,并把每次讀到的對應最小數據單元的數據集放入到數據存儲區內,并將對應該數據集的最小數據單元加入到最小數據單元鏈表中,直到數據讀取完或者直到當前讀線程正在操作的無鎖數據緩沖區已滿,將所述最小數據單元狀態標志設為最小數單元可以使用;
(3)計算線程獲取經過步驟(2)處理的無鎖數據緩沖區,并在無鎖狀態下,同時去該無鎖數據緩沖區中請求可用數據,直到該無鎖數據緩沖區為空;
(4)讀線程和計算線程交替互換使用兩個無鎖數據緩沖區,直到數據計算完成。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國石油化工股份有限公司;中國石油化工股份有限公司石油物探技術研究院,未經中國石油化工股份有限公司;中國石油化工股份有限公司石油物探技術研究院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310409758.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:服務器單元與虛擬媒體裝置及其存取方法數據
- 下一篇:存儲設備及數據處理方法
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





