亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于Hash的字符串存儲方法

文檔序號:6519043閱讀:262來源:國知局
一種基于Hash的字符串存儲方法
【專利摘要】本發(fā)明涉及一種基于Hash的字符串存儲方法,用于解決存儲客戶端中大量的字符數(shù)據(jù)而造成的內(nèi)存浪費(fèi)問題,其并采用hash數(shù)據(jù)結(jié)構(gòu)的字符串管理技術(shù),重復(fù)性很高的字符串,在內(nèi)存中只占用一個全集的nameHash,而使用地方只需要存儲index即可,這樣,字符串的占用資源的大小跟他的復(fù)雜度和使用次數(shù)基本無關(guān),大大提高減少了內(nèi)存占用率,同時,采用index的對比,可以快速的定位同名字符串,避開了繁瑣的字符串比對操作,提高了程序的執(zhí)行效率。
【專利說明】—種基于Hash的字符串存儲方法
[0001]
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及一種字符存儲技術(shù),用于解決存儲客戶端中大量的字符數(shù)據(jù)而造成的內(nèi)存浪費(fèi)問題。
【背景技術(shù)】
[0003]隨著網(wǎng)絡(luò)游戲的不斷發(fā)展,用戶對游戲畫質(zhì)的要求也不斷提升。在技術(shù)人員不斷提升客戶端渲染效率和效果的同時,客戶端的資源量也逐漸增多。
[0004]對于激增的大量資源,除了造成客戶端容量變大之外,五花八門頂點(diǎn)命名也給美工人員和策劃人員帶來了困擾。如果命名太過隨意和簡短,很容易產(chǎn)生重名,也不利于策劃和美工人員根據(jù)名字快速定位資源。這覺導(dǎo)致了在現(xiàn)在的客戶端資源中,每個資源的名字字符串都很長。再加上客戶端資源量的增大,資源名字符串在資源包的存儲中已經(jīng)占用了很大一部分。在資源序列化到內(nèi)存之后,也是一筆不小的內(nèi)存開銷。
[0005]本發(fā)明針對此問題,提出了一種基于垃圾回收,并采用hash數(shù)據(jù)結(jié)構(gòu)的字符串管理技術(shù),最大程度的減少資源量,加快字符串比對。

【發(fā)明內(nèi)容】

[0006]鑒于現(xiàn)有技術(shù)存 在的問題,本發(fā)明的目的是要提供一種基于Hash的字符串存儲方法,其并采用hash數(shù)據(jù)結(jié)構(gòu)的字符串管理技術(shù),最大程度的減少資源量,加快字符串比對。
[0007]為了實(shí)現(xiàn)上述目的,本發(fā)明所采用的技術(shù)方案為一種基于Hash的字符串存儲技術(shù),其步驟如下:
步驟1:建立字符串HASH表。選取合適的HASH函數(shù);
建立一個hash函數(shù)為int appstrhash (char*);把一個字符串轉(zhuǎn)換為了一個Int值,HASH表的主鍵為Int的鍵值,而對應(yīng)的容器中為各個字符串的字符值;
步驟2)加載資源時,對資源名進(jìn)行HASH ;
對資源名進(jìn)行拆分HASH,如果一個物件的名字為Mapl_AM_StaticMesh,那么這個物件就可以表示成三個鍵值的Int集合;如結(jié)構(gòu)體:
Struct ResIndex
{
Int KeyIndex;
Int HashIndex;
}
Struct ResName
{
【權(quán)利要求】
1.一種基于Hash的字符串存儲方法,其步驟如下: 步驟1:建立字符串HASH表; 選取合適的HASH函數(shù); 建立一個hash函數(shù)為int appstrhash(char*);把一個字符串轉(zhuǎn)換為了一個Int值,HASH表的主鍵為Int的鍵值,而對應(yīng)的容器中為各個字符串的字符值; 步驟2)加載資源時,對資源名進(jìn)行HASH ; 對資源名進(jìn)行拆分HASH,如果一個物件的名字為Mapl_AM_StaticMesh,那么這個物件就可以表示成三個鍵值的Int集合;如結(jié)構(gòu)體:

【文檔編號】G06F17/30GK103778180SQ201310569923
【公開日】2014年5月7日 申請日期:2013年11月16日 優(yōu)先權(quán)日:2013年11月16日
【發(fā)明者】陳洋 申請人:大連創(chuàng)達(dá)技術(shù)交易市場有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1