[發(fā)明專利]一種數(shù)據(jù)處理方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)在審
| 申請(qǐng)?zhí)枺?/td> | 202010415047.X | 申請(qǐng)日: | 2020-05-15 |
| 公開(kāi)(公告)號(hào): | CN111767281A | 公開(kāi)(公告)日: | 2020-10-13 |
| 發(fā)明(設(shè)計(jì))人: | 張?jiān)讫?/a> | 申請(qǐng)(專利權(quán))人: | 北京奇藝世紀(jì)科技有限公司 |
| 主分類號(hào): | G06F16/22 | 分類號(hào): | G06F16/22;G06F9/48 |
| 代理公司: | 北京華夏泰和知識(shí)產(chǎn)權(quán)代理有限公司 11662 | 代理人: | 杜欣 |
| 地址: | 100080 北京市海淀區(qū)*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù)處理 方法 裝置 電子設(shè)備 存儲(chǔ) 介質(zhì) | ||
本發(fā)明涉及一種數(shù)據(jù)處理方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì),所述方法包括:利用生產(chǎn)者線程處理待處理任務(wù),得到生產(chǎn)數(shù)據(jù);在暫存索引數(shù)組中查找與所述生產(chǎn)者線程對(duì)應(yīng)的索引位置;根據(jù)所述索引位置查找與所述索引位置對(duì)應(yīng)的暫存鏈表;利用與所述生產(chǎn)者線程對(duì)應(yīng)的消費(fèi)者線程消費(fèi)所述暫存鏈表中的所述生產(chǎn)數(shù)據(jù)。本發(fā)明實(shí)施例通過(guò)在暫存索引數(shù)組中設(shè)置與所述生產(chǎn)者線程對(duì)應(yīng)的索引位置,并且為每個(gè)索引位置設(shè)置對(duì)應(yīng)的暫存鏈表,實(shí)現(xiàn)為每一對(duì)生產(chǎn)者線程和消費(fèi)者線程設(shè)置獨(dú)立的索引位置及暫存鏈表,也即,為每一對(duì)生產(chǎn)者線程和消費(fèi)者線程建立專用的數(shù)據(jù)存儲(chǔ)空間,大幅提高系統(tǒng)并發(fā)計(jì)算的效率。
技術(shù)領(lǐng)域
本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)處理方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù)
當(dāng)前,為了提高系統(tǒng)運(yùn)算性能,通過(guò)多線程進(jìn)行系統(tǒng)構(gòu)建是一種非常普遍的方法。為了解決多線程架構(gòu)下的數(shù)據(jù)一致性安全問(wèn)題,業(yè)界通常做法是使用線程鎖。線程鎖主要是用來(lái)防止多個(gè)線程同時(shí)讀寫(xiě)某一塊內(nèi)存區(qū)域。
當(dāng)有多個(gè)線程需要訪問(wèn)同一塊內(nèi)存區(qū)域時(shí),由于加鎖后同一時(shí)間只能有一個(gè)線程在執(zhí)行,所以其余線程必須要等待當(dāng)前線程執(zhí)行完之后才能讀寫(xiě)該塊內(nèi)存區(qū)域。為線程加鎖這一方法在保證安全的同時(shí),由于要不斷的等待當(dāng)前加鎖的線程執(zhí)行完之后才能切換至下一線程,增加了很多操作系統(tǒng)層面的線程切換操作,非常影響系統(tǒng)整體的并發(fā)計(jì)算效率。
發(fā)明內(nèi)容
為了解決上述技術(shù)問(wèn)題或者至少部分地解決上述技術(shù)問(wèn)題,本申請(qǐng)?zhí)峁┝艘环N數(shù)據(jù)處理方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)。
第一方面,本申請(qǐng)?zhí)峁┝艘环N數(shù)據(jù)處理方法,所述方法包括:
利用生產(chǎn)者線程處理待處理任務(wù),得到生產(chǎn)數(shù)據(jù);
在暫存索引數(shù)組中查找與所述生產(chǎn)者線程對(duì)應(yīng)的索引位置;
根據(jù)所述索引位置查找與所述索引位置對(duì)應(yīng)的暫存鏈表;
利用與所述生產(chǎn)者線程對(duì)應(yīng)的消費(fèi)者線程消費(fèi)所述暫存鏈表中的所述生產(chǎn)數(shù)據(jù)。
可選的,在暫存索引數(shù)組中查找與所述生產(chǎn)者線程對(duì)應(yīng)的索引位置的步驟,包括:
獲取所述生產(chǎn)者線程的線程標(biāo)識(shí);
確定所述線程標(biāo)識(shí)是否位于預(yù)設(shè)路由表中;
若所述線程標(biāo)識(shí)位于預(yù)設(shè)路由表中,將所述預(yù)設(shè)路由表中與所述線程標(biāo)識(shí)對(duì)應(yīng)的索引位置確定為與所述生產(chǎn)者線程對(duì)應(yīng)的索引位置。
可選的,在暫存索引數(shù)組中查找與所述生產(chǎn)者線程對(duì)應(yīng)的索引位置的步驟,還包括:
若所述線程標(biāo)識(shí)不位于所述預(yù)設(shè)路由表中,為所述線程標(biāo)識(shí)分配對(duì)應(yīng)的索引位置;
將為所述線程標(biāo)識(shí)分配的索引位置確定為與所述生產(chǎn)者線程對(duì)應(yīng)的索引位置;
將所述線程標(biāo)識(shí)與所述索引位置之間的對(duì)應(yīng)關(guān)系存儲(chǔ)至所述預(yù)設(shè)路由表中。
可選的,所述方法還包括:
判斷所述暫存鏈表中當(dāng)前待消費(fèi)的數(shù)據(jù)量是否達(dá)到預(yù)設(shè)允許最大數(shù)據(jù)量;
若所述暫存鏈表中當(dāng)前待消費(fèi)的數(shù)據(jù)量達(dá)到預(yù)設(shè)允許最大數(shù)據(jù)量,等待消費(fèi)者線程消費(fèi)生產(chǎn)數(shù)據(jù),直至所述暫存鏈表中當(dāng)前待消費(fèi)的數(shù)據(jù)量小于所述預(yù)設(shè)允許最大數(shù)據(jù)量。
可選的,所述方法還包括:
若所述暫存鏈表中當(dāng)前待消費(fèi)的數(shù)據(jù)量小于預(yù)設(shè)允許最大數(shù)據(jù)量,執(zhí)行利用生產(chǎn)者線程處理所述待處理任務(wù),得到生產(chǎn)數(shù)據(jù)的步驟;
在得到生產(chǎn)數(shù)據(jù)后,向所述消費(fèi)者線程發(fā)送數(shù)據(jù)消費(fèi)通知。
可選的,所述方法還包括:
判斷所述暫存鏈表中是否存在待消費(fèi)的生產(chǎn)數(shù)據(jù);
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京奇藝世紀(jì)科技有限公司,未經(jīng)北京奇藝世紀(jì)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010415047.X/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)處理設(shè)備,數(shù)據(jù)處理方法,和數(shù)據(jù)處理程序
- 數(shù)據(jù)處理電路、數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法、數(shù)據(jù)處理控制方法
- 數(shù)據(jù)處理設(shè)備、數(shù)據(jù)處理方法和數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法及數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法及計(jì)算機(jī)可讀取的記錄介質(zhì)
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法和數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法和數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法以及數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法以及數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法和數(shù)據(jù)處理程序
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





