單寫入者多讀取者的數(shù)據(jù)存儲(chǔ)和讀取方法、裝置及設(shè)備

基本信息

申請(qǐng)?zhí)?/td> CN202111415550.6 申請(qǐng)日 -
公開(公告)號(hào) CN114064301A 公開(公告)日 2022-02-18
申請(qǐng)公布號(hào) CN114064301A 申請(qǐng)公布日 2022-02-18
分類號(hào) G06F9/52(2006.01)I;G06F9/54(2006.01)I 分類 計(jì)算;推算;計(jì)數(shù);
發(fā)明人 姚磊磊;陳勇;馬維士;劉加瑞 申請(qǐng)(專利權(quán))人 北京華云安信息技術(shù)有限公司
代理機(jī)構(gòu) 北京華專卓海知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 代理人 王一
地址 100094北京市海淀區(qū)豐豪東路9號(hào)2號(hào)樓10層4單元1001
法律狀態(tài) -

摘要

摘要 本公開的實(shí)施例提供了一種單寫入者多讀取者的數(shù)據(jù)存儲(chǔ)和讀取方法、裝置及設(shè)備。所述方法包括:讀取線程獲取數(shù)組中讀取位置原子變量的值以及讀取位置變量的值;設(shè)置讀標(biāo)志變量,所述讀標(biāo)志變量的值為讀取位置原子變量的值;將所述讀取位置原子變量的值增加預(yù)設(shè)的待讀取數(shù)據(jù)的大??;若讀標(biāo)志變量的值與所述數(shù)組中數(shù)據(jù)讀取位置變量的值相同,則基于所述數(shù)據(jù)讀取位置變量所指的位置,從所述數(shù)組讀取所述待讀取數(shù)據(jù);若不相同,則有其他讀取者線程正在讀取,不從所述數(shù)組讀取所述待讀取數(shù)據(jù),并將數(shù)值增加后的讀取原子位置變量的值減去預(yù)設(shè)的待讀取數(shù)據(jù)的大小。以此方式,可以實(shí)現(xiàn)不加鎖的情況下解決共享內(nèi)存的方案中多個(gè)讀取進(jìn)程之間的數(shù)據(jù)競爭問題。