[發明專利]一種共享緩存的方法、裝置及電子設備在審
| 申請號: | 202110442251.5 | 申請日: | 2021-04-23 |
| 公開(公告)號: | CN113176942A | 公開(公告)日: | 2021-07-27 |
| 發明(設計)人: | 張華;孔慶新 | 申請(專利權)人: | 北京藍色星云科技發展有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F3/06 |
| 代理公司: | 北京柏杉松知識產權代理事務所(普通合伙) 11413 | 代理人: | 丁蕓;趙元 |
| 地址: | 102300 北京市門頭*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 共享 緩存 方法 裝置 電子設備 | ||
本發明實施例提供了一種共享緩存的方法、裝置及電子設備,所述方法包括:創建并初始化共享內存;建立共享內存的地址與目標進程的虛擬內存地址之間的映射關系;根據創建生產者指令創建生產者,根據創建消費者指令創建消費者;生產者使用順序插入、順序覆蓋的方式在共享內存中插入待消費數據,并向消費者發送待消費數據的信息,其中,順序插入、順序覆蓋表示針對共享內存的數據區從頭到尾進行重復遍歷,以將待消費數據使用順序插入、順序覆蓋的方式插入共享內存;消費者根據待消費數據的信息,從共享內存中獲取待消費數據,并對待消費數據進行處理。本發明,能夠提高內存利用率,降低數據處理時延。
技術領域
本發明涉及計算機技術領域,特別是涉及一種共享緩存的方法、裝置及電子設備。
背景技術
隨著科技的進步,電子設備等硬件性能方面不斷提升。在視頻數據處理方面,隨著視頻數據量的增大,視頻分辨率也在不斷的提升,視頻展示的功能也更加復雜,進而電子設備等需要對音視頻數據的處理量日益增加,使得對電子設備等的內存容量要求越來越高。
現有為緩解對電子設備等內存容量的需求,一種使用共享緩存的方法為:將內存池劃分為固定大小的區塊,進而使用所劃分的區塊對音視頻數據進行處理。
然而,實際應用中,音視頻數據可以是動態變化的,進而固定大小的內存區塊很難滿足音視頻數據處理的需求,使得內存利用率較低,而實時根據待處理的音視頻數據需求重新對內存池進行劃分,耗時較長,又會使得數據處理延時較大。
發明內容
本發明實施例的目的在于提供一種共享緩存的方法、裝置及電子設備,以提高內存利用率,降低數據處理時延。具體技術方案如下:
第一方面,本發明實施例提供了一種共享緩存的方法,所述方法包括:
創建并初始化共享內存;
建立所述共享內存的地址與目標進程的虛擬內存地址之間的映射關系;
根據創建生產者指令創建生產者,所述生產者用于在所述共享內存中插入待消費數據;
根據創建消費者指令創建消費者,所述消費者用于對插入所述共享內存中的待消費數據進行處理;
所述生產者使用順序插入、順序覆蓋的方式在所述共享內存中插入待消費數據,并向所述消費者發送待消費數據的信息,所述順序插入、順序覆蓋表示針對所述共享內存的數據區從頭到尾進行重復遍歷,以將待消費數據使用順序插入、順序覆蓋的方式插入所述共享內存;
所述消費者根據所述待消費數據的信息,從所述共享內存中獲取待消費數據,并對所述待消費數據進行處理。
可選地,所述共享內存包括:共享內存頭控制信息區和數據區,所述數據區包括多個數據塊,所述生產者使用順序插入、順序覆蓋的方式在所述共享內存中插入待消費數據的步驟,包括:
所述生產者順序遍歷所述共享內存的數據區,在所述數據區結尾的可用空間不足以插入所述待消費數據,或者重新遍歷所述數據區,在被占用數據塊之前的可用空間不足以插入所述待消費數據時,則跳過所述數據塊,從所述數據區中順序獲取能夠插入所述待消費數據的目標數據塊;
將所述待消費數據寫入所述目標數據塊中。
可選地,所述共享內存包括:共享內存頭控制信息區和數據區,所述數據區包括多個數據塊,所述數據塊包括數據頭和數據;所述生產者使用順序插入、順序覆蓋的方式在所述共享內存中插入待消費數據的步驟,包括:
獲取所述共享內存中的數據使用偏移位置;
基于所述數據使用偏移位置遍歷所述數據區,確定已獲取的內存大?。?/p>
判斷所述已獲取內存大小是否小于目標內存大小與一個數據頭大小之和,且所述數據區是否遍歷完成;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京藍色星云科技發展有限公司,未經北京藍色星云科技發展有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110442251.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:電池及電子設備
- 下一篇:一種用于應用于五面加工高效除屑的收集裝置





