專(zhuān)利名稱(chēng):對(duì)象的存儲(chǔ)方法及裝置、終端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)的存儲(chǔ)技術(shù)領(lǐng)域,尤其是一種對(duì)象的存儲(chǔ)方法及裝置、終端。
背景技術(shù):
系統(tǒng)進(jìn)行數(shù)據(jù)運(yùn)算時(shí),通常先獲取內(nèi)存,然后將待運(yùn)算的數(shù)據(jù)存儲(chǔ)在該內(nèi)存中,再進(jìn)行運(yùn)算,運(yùn)算完成之后將該內(nèi)存交還給系統(tǒng),下次進(jìn)行數(shù)據(jù)運(yùn)算時(shí),重新再向系統(tǒng)獲取內(nèi)存。因此在數(shù)據(jù)運(yùn)算的過(guò)程中,系統(tǒng)需要反復(fù)分配和回收內(nèi)存,十分耗時(shí),嚴(yán)重影響了系統(tǒng)的效率。另外,在數(shù)據(jù)的運(yùn)算過(guò)程中,數(shù)據(jù)量通常是變化的,若數(shù)據(jù)量變大,則系統(tǒng)分配較大容量的內(nèi)存進(jìn)行數(shù)據(jù)運(yùn)算,用完之后再交還系統(tǒng);若數(shù)據(jù)量變小,則系統(tǒng)分配較小容量的內(nèi)存進(jìn)行數(shù)據(jù)運(yùn)算,用完之后再交還系統(tǒng)。這種內(nèi)存的分配方式會(huì)造成內(nèi)存劃分不均,浪費(fèi)內(nèi)存的存儲(chǔ)空間,并且系統(tǒng)回收之后,大小不一的存儲(chǔ)空間容易導(dǎo)致大量的內(nèi)存碎片,影響內(nèi)存的使用。以地圖顯示為例,不同的地圖需要加載不同的地圖數(shù)據(jù)到內(nèi)存,再進(jìn)行后續(xù)的顯示繪制運(yùn)算。具體的地圖顯示技術(shù)可以參考公開(kāi)號(hào)為CN 1864186A的專(zhuān)利申請(qǐng)。不同的地圖其對(duì)應(yīng)的地圖數(shù)據(jù)的大小也不盡相同,繁華地區(qū)的地圖數(shù)據(jù)相對(duì)較大,偏僻地區(qū)的地圖數(shù)據(jù)相對(duì)較小。因此顯示地圖時(shí),由于加載的地圖數(shù)據(jù)反復(fù)變化,通常會(huì)反復(fù)獲取大小不一的內(nèi)存,并且反復(fù)造成碎片。這不僅影響數(shù)據(jù)的運(yùn)算效率,還會(huì)造成大量的碎片,影響后續(xù)的數(shù)據(jù)的存儲(chǔ)與運(yùn)算。因此如何提高數(shù)據(jù)的運(yùn)算效率,減小數(shù)據(jù)存儲(chǔ)及運(yùn)算過(guò)程中產(chǎn)生的碎片,成為目前亟待解決的問(wèn)題之一。
發(fā)明內(nèi)容
本發(fā)明解決的問(wèn)題是如何提高現(xiàn)有技術(shù)中數(shù)據(jù)的運(yùn)算效率,減小數(shù)據(jù)存儲(chǔ)及運(yùn)算過(guò)程中產(chǎn)生的碎片。為解決上述問(wèn)題,本發(fā)明的技術(shù)方案提供了一種對(duì)象的存儲(chǔ)方法,包括:獲取第一預(yù)定容量的存儲(chǔ)空間,設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí);基于所述標(biāo)識(shí)存入對(duì)象,并更新所述標(biāo)識(shí),存入同一存儲(chǔ)空間的對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同;所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),重新獲取第二預(yù)定容量的存儲(chǔ)空間或復(fù)用已飽和的存儲(chǔ)空間。為解決上述問(wèn)題,本發(fā)明的技術(shù)方案還提供了一種對(duì)象的存儲(chǔ)裝置,包括:獲取單元,用以獲取第一預(yù)定容量的存儲(chǔ)空間;操作單元,用以設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí),基于所述標(biāo)識(shí)存入對(duì)象,并更新所述標(biāo)識(shí),存入同一存儲(chǔ)空間的對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同;所述獲取單元,還用以在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),重新獲取第二預(yù)定容量的存儲(chǔ)空間;所述操作單元,還用以在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),復(fù)用已飽和的存儲(chǔ)空間。為解決上述問(wèn)題,本發(fā)明的技術(shù)方案還提供了一種終端,包括上述對(duì)象的存儲(chǔ)裝置。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn):獲取第一預(yù)定容量的存儲(chǔ)空間,并設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí),基于該標(biāo)識(shí)存入對(duì)象。這可以保證每次存入對(duì)象時(shí),本次存入的對(duì)象是緊接著上次最后一個(gè)存儲(chǔ)的對(duì)象存儲(chǔ)的,對(duì)象和對(duì)象之間是連續(xù)存儲(chǔ)的,節(jié)省了內(nèi)存的存儲(chǔ)空間。由于該存儲(chǔ)空間的容量較大,可以存儲(chǔ)較多的對(duì)象,減少了系統(tǒng)分配內(nèi)存的次數(shù),不僅提聞了系統(tǒng)的效率,并且大塊的存儲(chǔ)空間可以減小碎片的廣生幾率。將所述對(duì)象存入所述存儲(chǔ)空間之前,將所述存儲(chǔ)空間劃分為子存儲(chǔ)空間,所述對(duì)象存入一個(gè)或至少兩個(gè)連續(xù)的子存儲(chǔ)空間。將大的存儲(chǔ)空間細(xì)分為小的存儲(chǔ)空間,可以進(jìn)一步的提聞存儲(chǔ)空間的利用率。獲取的存儲(chǔ)空間處于飽和時(shí),可以復(fù)用已飽和的存儲(chǔ)空間,不需要將該存儲(chǔ)空間交還給系統(tǒng)。由于對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同,因此存儲(chǔ)空間處于飽和時(shí),新存入的對(duì)象可以覆蓋無(wú)效的對(duì)象,并且數(shù)據(jù)運(yùn)算過(guò)程中產(chǎn)生的新數(shù)據(jù)可以覆蓋舊數(shù)據(jù)。這種復(fù)用方式減少了存儲(chǔ)空間分配和回收的操作,提高了存儲(chǔ)空間的利用率,提高了數(shù)據(jù)運(yùn)算的效率。獲取的存儲(chǔ)空間處于飽和時(shí),也可以再次獲取新的存儲(chǔ)空間。若飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象均為有效的對(duì)象,才會(huì)再次獲取新的存儲(chǔ)空間,減少了系統(tǒng)分配內(nèi)存的次數(shù),并且提高了系統(tǒng)的運(yùn)行效率。這樣不僅保護(hù)已存儲(chǔ)的對(duì)象不會(huì)被覆蓋,避免數(shù)據(jù)丟失,而且新獲取的存儲(chǔ)空間可以存儲(chǔ)更多的對(duì)象。
圖1為本發(fā)明實(shí)施例提供的對(duì)象的存儲(chǔ)方法的流程圖;圖2至圖11為本發(fā)明實(shí)施例提供的地圖對(duì)象在內(nèi)存中存儲(chǔ)的示意圖。
具體實(shí)施例方式為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更為明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式
做詳細(xì)的說(shuō)明。在以下描述中闡述了具體細(xì)節(jié)以便于充分理解本發(fā)明。但是本發(fā)明能夠以多種不同于在此描述的其它方式來(lái)實(shí)施,本領(lǐng)域技術(shù)人員可以在不違背本發(fā)明內(nèi)涵的情況下做類(lèi)似推廣。因此本發(fā)明不受下面公開(kāi)的具體實(shí)施方式
的限制。圖1為本發(fā)明實(shí)施例提供的對(duì)象的存儲(chǔ)方法的流程圖,下面結(jié)合圖1詳細(xì)說(shuō)明。步驟SI,獲取第一預(yù)定容量的存儲(chǔ)空間,設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí);步驟S2,基于所述標(biāo)識(shí)存入對(duì)象,并更新所述標(biāo)識(shí),存入同一存儲(chǔ)空間的對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同;步驟S3,所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),重新獲取第二預(yù)定容量的存儲(chǔ)空間或復(fù)用已飽和的存儲(chǔ)空間。所述步驟SI中,獲取第一預(yù)定容量的存儲(chǔ)空間,可以是獲取內(nèi)存的存儲(chǔ)空間。通常標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí)設(shè)置在已用空間的結(jié)束位置或可用空間的開(kāi)始位置。所述第一預(yù)定容量基于所述對(duì)象的大小、數(shù)目、數(shù)據(jù)結(jié)構(gòu)中的一種或幾種的組合確定。所述第一預(yù)定容量的存儲(chǔ)空間一般為大塊的存儲(chǔ)空間,可以存儲(chǔ)較多的對(duì)象。所述步驟S2中,基于所述標(biāo)識(shí)存入對(duì)象,并在存儲(chǔ)完對(duì)象之后,更新所述標(biāo)識(shí),存入同一存儲(chǔ)空間的對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同。所述對(duì)象可以為地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo),或者所述地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo)對(duì)應(yīng)的屏幕坐標(biāo),或者兩者皆有。地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo)或點(diǎn)屏幕坐標(biāo)的數(shù)據(jù)結(jié)構(gòu)通常為(X, y)或(X, y, z), X表示橫坐標(biāo)軸,y表示縱坐標(biāo)軸,z表示垂直與X軸與y軸組成的平面的坐標(biāo)軸。所述對(duì)象的數(shù)據(jù)還可以是結(jié)構(gòu)體、枚舉類(lèi)型等其他類(lèi)型的數(shù)據(jù)結(jié)構(gòu)。這可以保證每次存入對(duì)象時(shí),本次存入的對(duì)象是緊接著上次最后一個(gè)存儲(chǔ)的對(duì)象存儲(chǔ)的,對(duì)象和對(duì)象之間是連續(xù)存儲(chǔ)的,沒(méi)有間隙,減小了碎片的產(chǎn)生幾率。將所述對(duì)象存入所述存儲(chǔ)空間之前,將所述存儲(chǔ)空間劃分為子存儲(chǔ)空間,所述對(duì)象存入一個(gè)或至少兩個(gè)連續(xù)的子存儲(chǔ)空間,所述標(biāo)識(shí)設(shè)置在最后一個(gè)已存入對(duì)象的子存儲(chǔ)空間或第一個(gè)未存入對(duì)象的子存儲(chǔ)空間。將大的存儲(chǔ)空間細(xì)分為小的子存儲(chǔ)空間,所述對(duì)象可以以子存儲(chǔ)空間為單位存入所述存儲(chǔ)空間。小的子存儲(chǔ)空間可以更精細(xì)的計(jì)算大的存儲(chǔ)空間的已用空間和未用空間,提高存儲(chǔ)空間的利用率,防止存儲(chǔ)空間的浪費(fèi),并且將標(biāo)識(shí)設(shè)置在最后一個(gè)已存入對(duì)象的子存儲(chǔ)空間或第一個(gè)未存入對(duì)象的子存儲(chǔ)空間,方便存入下一個(gè)對(duì)象。所述步驟S3中,若獲取的存儲(chǔ)空間的使用狀態(tài)處于飽和狀態(tài)時(shí),可以復(fù)用已飽和的存儲(chǔ)空間,也可以重新獲取第二預(yù)定容量的存儲(chǔ)空間。所述第二預(yù)定容量基于所述對(duì)象的大小、數(shù)目、數(shù)據(jù)結(jié)構(gòu)中的一種或幾種的組合確定。所述第一預(yù)定容量和所述第二預(yù)定容量可以是相同的,也可以是不同的。對(duì)于地圖數(shù)據(jù)(也稱(chēng)為地圖對(duì)象)來(lái)講,所述第一預(yù)定容量和第二預(yù)定容量為一次加載的地圖數(shù)據(jù)的容量的至少兩倍。具體實(shí)施時(shí),可以是所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),若所述已飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象為無(wú)效的對(duì)象,則復(fù)用已飽和的存儲(chǔ)空間。若所述已飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象為有效的對(duì)象,則重新獲取第二預(yù)定容量的存儲(chǔ)空間。由于對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同,因此存儲(chǔ)空間處于飽和時(shí),新存入的對(duì)象可以覆蓋無(wú)效的對(duì)象,并且數(shù)據(jù)運(yùn)算過(guò)程中產(chǎn)生的新數(shù)據(jù)可以覆蓋舊數(shù)據(jù)。這種復(fù)用方式減少了存儲(chǔ)空間分配和回收的操作,提高了存儲(chǔ)空間的利用率,提高了數(shù)據(jù)運(yùn)算的效率。若飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象均為有效的對(duì)象,可以再次獲取新的存儲(chǔ)空間。這樣不僅保護(hù)已存儲(chǔ)的對(duì)象不會(huì)被覆蓋,避免數(shù)據(jù)丟失,而且新獲取的存儲(chǔ)空間可以存儲(chǔ)更多的對(duì)象。所述無(wú)效的對(duì)象表示存儲(chǔ)在該飽和的存儲(chǔ)空間中,但是已沒(méi)有使用價(jià)值的對(duì)象,例如,已經(jīng)經(jīng)過(guò)運(yùn)算的對(duì)象,長(zhǎng)時(shí)間不使用的對(duì)象或者經(jīng)過(guò)運(yùn)算之后獲得中間數(shù)據(jù)或臨時(shí)數(shù)據(jù)等。所述有效的對(duì)象表示存儲(chǔ)在該飽和的存儲(chǔ)空間中,還具有使用價(jià)值的對(duì)象,例如,還未經(jīng)過(guò)運(yùn)算的對(duì)象,需要進(jìn)行二次或多次運(yùn)算的對(duì)象等。具體實(shí)施時(shí),以具體情況為準(zhǔn)。所述存儲(chǔ)空間的使用狀態(tài)為飽和的情況有多種,例如,所述存儲(chǔ)空間全部被使用,可用空間為O或者剩余的可用空間的大小小于下一個(gè)待存儲(chǔ)的對(duì)象的大小等。具體實(shí)施時(shí),以具體情況為準(zhǔn)。圖2至圖4為本發(fā)明實(shí)施例提供的地圖對(duì)象在內(nèi)存中存儲(chǔ)的示意圖,下面結(jié)合圖2至圖4詳細(xì)說(shuō)明。地圖是通過(guò)點(diǎn)、線、面來(lái)繪制的,例如,興趣點(diǎn)等是以不同大小的點(diǎn)或圓來(lái)繪制的,道路、河流等是以不同寬度的線條繪制的,公園、綠地等是以不同形狀、不同大小的面來(lái)繪制的。從幾何的角度來(lái)講,點(diǎn)是組成圖形的基本元素;線可以看成是由多個(gè)點(diǎn)組成的;面可以看成是由多條線組成的,而線是由點(diǎn)組成的,面也是由點(diǎn)組成的。在繪制地圖時(shí),通常是一個(gè)點(diǎn)一個(gè)點(diǎn)的繪制地圖。在顯示地圖時(shí),通常是將地圖數(shù)據(jù)庫(kù)中地圖數(shù)據(jù)(也稱(chēng)為地圖對(duì)象或地圖對(duì)象的集合)加載至內(nèi)存的存儲(chǔ)空間中,再對(duì)該地圖數(shù)據(jù)進(jìn)行運(yùn)算得到適于在屏幕中繪制的繪圖數(shù)據(jù)(也稱(chēng)為繪圖對(duì)象或繪圖對(duì)象的集合),基于該繪圖數(shù)據(jù)繪制地圖中的內(nèi)容并顯示在屏眷中。地圖數(shù)據(jù)中保存的數(shù)據(jù)通常是點(diǎn)、線、面等數(shù)據(jù),該數(shù)據(jù)通常是實(shí)際的地理位置的點(diǎn)坐標(biāo)(例如,經(jīng)纟韋度坐標(biāo))或地理位置的點(diǎn)坐標(biāo)的集合,且每一個(gè)地理位置的點(diǎn)坐標(biāo)的數(shù)據(jù)結(jié)構(gòu)均相同為(X,y)或(X,1,z)。在顯示地圖之前,需要將上述地理位置的點(diǎn)的坐標(biāo)或地理位置的點(diǎn)的坐標(biāo)的集合轉(zhuǎn)化為屏幕(例如,顯示屏)的點(diǎn)坐標(biāo)或屏幕的點(diǎn)坐標(biāo)的集合。地理位置的點(diǎn)坐標(biāo)和屏幕的點(diǎn)坐標(biāo)都可以稱(chēng)為地圖對(duì)象,也可以簡(jiǎn)稱(chēng)對(duì)象?,F(xiàn)有技術(shù)中,每次從地圖數(shù)據(jù)庫(kù)中加載的地圖數(shù)據(jù)時(shí),根據(jù)本次加載的地圖數(shù)據(jù)的大小,獲取內(nèi)存的存儲(chǔ)空間,并存入本次加載的地圖數(shù)據(jù),使用完之后,再將該內(nèi)存的存儲(chǔ)空間交還給系統(tǒng),下次在加載地圖數(shù)據(jù)時(shí),再向系統(tǒng)獲取內(nèi)存的存儲(chǔ)空間。因此在地圖數(shù)據(jù)的加載過(guò)程中,系統(tǒng)需要反復(fù)分配和回收內(nèi)存,十分耗時(shí),嚴(yán)重影響了系統(tǒng)的效率,由于每次加載的地圖數(shù)據(jù)有大有小,這種方式還會(huì)造成大量的內(nèi)存碎片,影響內(nèi)存的使用。圖2為本發(fā)明實(shí)施例提供的內(nèi)存的存儲(chǔ)空間的結(jié)構(gòu)圖,從地圖數(shù)據(jù)庫(kù)中加載的地圖數(shù)據(jù)(地圖對(duì)象或地圖對(duì)象的集合)是存放在預(yù)先獲取的一塊存儲(chǔ)空間10中的,存儲(chǔ)空間10的大小可以根據(jù)一次待存儲(chǔ)的地圖對(duì)象的大小、數(shù)目、數(shù)據(jù)結(jié)構(gòu)等確定。地圖對(duì)象的數(shù)據(jù)結(jié)構(gòu)通常決定地圖對(duì)象的大小,例如,數(shù)據(jù)結(jié)構(gòu)復(fù)雜的地圖對(duì)象較大,數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單的地圖對(duì)象較小。存儲(chǔ)空間10的容量可以是加載一次地圖所需容量的至少2倍,本實(shí)施例中,存儲(chǔ)空間10的大小可以是地圖對(duì)象的大小乘以地圖對(duì)象的數(shù)目得到的結(jié)果(加載一次地圖的地圖對(duì)象的總數(shù)據(jù)量)的2 4倍。從系統(tǒng)獲取較大容量的存儲(chǔ)空間(大塊的內(nèi)存),可以便于后續(xù)的數(shù)據(jù)存儲(chǔ),減少系統(tǒng)分配和回收內(nèi)存的次數(shù)。存儲(chǔ)空間10劃分成100個(gè)等大的子存儲(chǔ)空間,分別是子存儲(chǔ)空間101,子存儲(chǔ)空間102,子存儲(chǔ)空間103,子存儲(chǔ)空間104,子存儲(chǔ)空間105,子存儲(chǔ)空間106,子存儲(chǔ)空間107,子存儲(chǔ)空間108,子存儲(chǔ)空間109,子存儲(chǔ)空間110,子存儲(chǔ)空間111,子存儲(chǔ)空間112,子存儲(chǔ)空
間113,子存儲(chǔ)空間114,子存儲(chǔ)空間115,......,子存儲(chǔ)空間191,子存儲(chǔ)空間192,子存儲(chǔ)
空間193,子存儲(chǔ)空間194,子存儲(chǔ)空間195,子存儲(chǔ)空間196,子存儲(chǔ)空間197,子存儲(chǔ)空間198,子存儲(chǔ)空間199,依次順序編號(hào)至子存儲(chǔ)空間200。將存儲(chǔ)空間10劃分為子存儲(chǔ)空間時(shí),通常根據(jù)地圖對(duì)象的數(shù)據(jù)結(jié)構(gòu)、數(shù)目、大小等確定子存儲(chǔ)空間的大小。數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單的地圖對(duì)象較小,通常一個(gè)地圖對(duì)象占用一個(gè)子存儲(chǔ)空間,每個(gè)子存儲(chǔ)空間的大小等于或略大于地圖對(duì)象的大??;數(shù)據(jù)結(jié)構(gòu)復(fù)雜的地圖對(duì)象較大,可以將該地圖對(duì)象拆分成幾個(gè)小的地圖對(duì)象,一個(gè)小的地圖對(duì)象存儲(chǔ)在一個(gè)子存儲(chǔ)空間,此時(shí)劃分的子存儲(chǔ)空間的大小等于或略大于地圖對(duì)象拆分之后的小的地圖對(duì)象的大小。本實(shí)施例中存儲(chǔ)放入的是數(shù)據(jù)結(jié)構(gòu)為點(diǎn)坐標(biāo)的地圖對(duì)象,一個(gè)點(diǎn)坐標(biāo)的地圖對(duì)象占用四個(gè)子存儲(chǔ)空間。存儲(chǔ)在同一存儲(chǔ)空間10中的地圖對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同,因此每個(gè)地圖對(duì)象的拆分方式也相同,拆分的小的地圖對(duì)象的個(gè)數(shù)也相同。具體實(shí)施時(shí),地圖對(duì)象的拆分方式也可以不相同,拆分的小的地圖對(duì)象的個(gè)數(shù)也可以不相同,不限于本實(shí)施例的內(nèi)容。圖2所示的存儲(chǔ)空間10中還未存儲(chǔ)地圖對(duì)象,因此用以標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí)20設(shè)置在第一個(gè)子存儲(chǔ)空間101,地圖對(duì)象(通常為點(diǎn)坐標(biāo))可以依據(jù)標(biāo)識(shí)20順次存放在子存儲(chǔ)空間中。在具體實(shí)施時(shí),標(biāo)識(shí)20通常為指針,設(shè)置在最后一個(gè)已存入地圖對(duì)象的子存儲(chǔ)空間或第一個(gè)未存入地圖對(duì)象的子存儲(chǔ)空間。由于圖2中所示的存儲(chǔ)空間10還未使用,因此標(biāo)識(shí)20通常設(shè)置在第一個(gè)未存入地圖對(duì)象的子存儲(chǔ)空間,即圖2中的子存儲(chǔ)空間101。圖2中僅是以示意的形式將存儲(chǔ)空間10劃分為若干子存儲(chǔ)空間,因此省略了部分子存儲(chǔ)空間。在具體實(shí)施時(shí),子存儲(chǔ)空間的大小可以不相同,且子存儲(chǔ)空間的數(shù)目也不限于本實(shí)施例中的數(shù)目,編號(hào)方式也不限于本實(shí)施例中的方式,甚至還可以不編號(hào)。圖3為圖2所不的存儲(chǔ)空間存入對(duì)象的不意圖。圖2為未存入地圖對(duì)象的存儲(chǔ)空間10,標(biāo)識(shí)20設(shè)于子存儲(chǔ)空間101,依據(jù)標(biāo)識(shí)20所在的位置,存入地圖對(duì)象,從子存儲(chǔ)空間開(kāi)始順次存入地圖對(duì)象。點(diǎn)坐標(biāo)的地圖對(duì)象占用四個(gè)子存儲(chǔ)空間,從子存儲(chǔ)空間101開(kāi)始順序存儲(chǔ),圖3為存入一個(gè)點(diǎn)坐標(biāo)的地圖對(duì)象之后的存儲(chǔ)空間的不意圖。參考圖3,本實(shí)施例中,標(biāo)識(shí)20已經(jīng)更新到子存儲(chǔ)空間104,標(biāo)示子存儲(chǔ)空間104為最后一個(gè)已存入地圖對(duì)象的子存儲(chǔ)空間。其他實(shí)施例中,標(biāo)識(shí)20還可以設(shè)置在子存儲(chǔ)空間105,標(biāo)示第一個(gè)未存入地圖對(duì)象的子存儲(chǔ)空間。標(biāo)識(shí)20主要是為了標(biāo)示存儲(chǔ)空間10的使用狀態(tài),具體實(shí)施時(shí),標(biāo)識(shí)20的位置可以根據(jù)需要設(shè)置,不限于上述舉例。存儲(chǔ)存儲(chǔ)空間10的地圖對(duì)象的數(shù)據(jù)結(jié)構(gòu)均為相同的,本實(shí)施例中,均為點(diǎn)坐標(biāo)的地圖對(duì)象?;跇?biāo)識(shí)20存入地圖對(duì)象,并更新標(biāo)識(shí)20。由于每次加載的地圖數(shù)據(jù)不盡相同,且每次加載的地圖數(shù)據(jù)的大小也不固定,存儲(chǔ)空間10的容量有限且不能更改,因此經(jīng)常出現(xiàn)存儲(chǔ)空間10已經(jīng)飽和,但是還有地圖對(duì)象未存儲(chǔ)在存儲(chǔ)空間10中。存儲(chǔ)空間10的使用狀態(tài)為飽和時(shí),可以復(fù)用已飽和的存儲(chǔ)空間10,也可以重新獲取新的存儲(chǔ)空間。具體實(shí)施時(shí),飽和的存儲(chǔ)空間10中,已存儲(chǔ)的地圖對(duì)象為無(wú)效的對(duì)象,也就是該地圖對(duì)象已經(jīng)廢棄或者不再使用了。例如,已存儲(chǔ)的地圖對(duì)象為加載過(guò)的地圖數(shù)據(jù),不需要再次使用的,待存儲(chǔ)的地圖對(duì)象為新加載的地圖數(shù)據(jù)。此時(shí)可以將待存儲(chǔ)的地圖對(duì)象存入該舊的地圖對(duì)象所占據(jù)的子存儲(chǔ)空間,以新的地圖對(duì)象覆蓋舊的地圖對(duì)象。這可以提高存儲(chǔ)空間10的利用率,并減少系統(tǒng)分配和回收存儲(chǔ)空間10的次數(shù),提高效率。飽和的存儲(chǔ)空間10中,已存儲(chǔ)的地圖對(duì)象為有效的對(duì)象,也就是說(shuō),存儲(chǔ)在存儲(chǔ)空間10中的地圖對(duì)象還在使用中,或者還未使用。例如,本次加載的地圖為繁華區(qū)域的地圖,地圖數(shù)據(jù)較大,存儲(chǔ)空間10容量不夠。此時(shí)可以重新獲取新的存儲(chǔ)空間,以補(bǔ)充舊的存儲(chǔ)空間10的容量不足。這不僅可以補(bǔ)充舊的存儲(chǔ)空間10的容量不足,還可以保證已存儲(chǔ)的數(shù)據(jù)不被破壞。圖4為圖3所示的存儲(chǔ)空間飽和時(shí)的示意圖,此時(shí)存儲(chǔ)空間10的全部子存儲(chǔ)空間都已存儲(chǔ)了地圖對(duì)象,沒(méi)有剩余可用的子存儲(chǔ)空間存儲(chǔ)后續(xù)的地圖對(duì)象。此時(shí)標(biāo)識(shí)20設(shè)于最后一個(gè)已存入地圖對(duì)象的子存儲(chǔ)空間,即子存儲(chǔ)空間200。存儲(chǔ)空間10使用狀態(tài)未飽和的情況有多種,圖4為其中一種,在其他實(shí)施例中,還有可能是圖5所示的情況。存儲(chǔ)空間10的子存儲(chǔ)空間101至子存儲(chǔ)空間198均已存入了地圖對(duì)象,還剩余子存儲(chǔ)空間199和子存儲(chǔ)空間200還未存入地圖對(duì)象,標(biāo)識(shí)20設(shè)于子存儲(chǔ)空間198。此時(shí)下一個(gè)待存儲(chǔ)的地圖對(duì)象為點(diǎn)坐標(biāo)的地圖對(duì)象,需要占用四個(gè)子存儲(chǔ)空間,目前只有兩個(gè)子存儲(chǔ)空間可用,不夠下一個(gè)地圖對(duì)象的存儲(chǔ),則此時(shí)也可以認(rèn)定存儲(chǔ)空間10飽和。具體實(shí)施時(shí),存儲(chǔ)空間10的使用狀態(tài)為飽和的情況有多種,不限于上述舉例范圍。圖6為圖4所示的存儲(chǔ)空間飽和時(shí)存儲(chǔ)空間復(fù)用的示意圖,圖4所示的標(biāo)識(shí)20位于最后一個(gè)已存入地圖對(duì)象的子存儲(chǔ)空間200,此時(shí)存儲(chǔ)空間10已飽和,下一個(gè)待存儲(chǔ)的地圖對(duì)象為點(diǎn)坐標(biāo)的地圖對(duì)象,需要占用四個(gè)子存儲(chǔ)空間,則從存儲(chǔ)空間10的第一個(gè)子存儲(chǔ)空間101開(kāi)始復(fù)用,將所述下一個(gè)待存儲(chǔ)的地圖對(duì)象順序存入子存儲(chǔ)空間101至子存儲(chǔ)空間104,并重新設(shè)置標(biāo)識(shí)20于子存儲(chǔ)空間104,如圖6所示。圖7為圖5所示的存儲(chǔ)空間飽和時(shí)存儲(chǔ)空間復(fù)用的示意圖,圖5所示的存儲(chǔ)空間10的子存儲(chǔ)空間101至子存儲(chǔ)空間198均已存入了地圖對(duì)象,還剩余子存儲(chǔ)空間199和子存儲(chǔ)空間200還未存入地圖對(duì)象,標(biāo)識(shí)20設(shè)于子存儲(chǔ)空間198。由于下一個(gè)待存儲(chǔ)的地圖對(duì)象需占用四個(gè)子存儲(chǔ)空間,目前僅剩余兩個(gè)可用的子存儲(chǔ)空間,因此,此時(shí)可以認(rèn)定存儲(chǔ)空間10已飽和。采用復(fù)用已飽和的存儲(chǔ)空間10的方式存儲(chǔ)下一個(gè)待存儲(chǔ)的地圖對(duì)象時(shí),基于圖5中標(biāo)識(shí)20所在的位置,從子存儲(chǔ)空間199開(kāi)始存儲(chǔ)。將所述下一個(gè)待存儲(chǔ)的地圖對(duì)象順序存入子存儲(chǔ)空間199和子存儲(chǔ)空間200。此時(shí)存儲(chǔ)空間10的全部子存儲(chǔ)空間均已存入地圖對(duì)象,則從存儲(chǔ)空間10的第一個(gè)子存儲(chǔ)空間101開(kāi)始復(fù)用,以新的地圖對(duì)象覆蓋舊的地圖對(duì)象,并重新更新標(biāo)識(shí)20的位置于子存儲(chǔ)空間102,如圖7所示。圖8為圖5所示的存儲(chǔ)空間飽和時(shí)存儲(chǔ)空間復(fù)用的另一示意圖。圖5所示的存儲(chǔ)空間10還剩余子存儲(chǔ)空間199和子存儲(chǔ)空間200未使用,在存儲(chǔ)下一個(gè)地圖對(duì)象時(shí),廢棄子存儲(chǔ)空間199和子存儲(chǔ)空間200,直接從存儲(chǔ)空間10的第一個(gè)子存儲(chǔ)空間101開(kāi)始復(fù)用,順序存入下一個(gè)地圖對(duì)象,并重新設(shè)置標(biāo)識(shí)20的位置于子存儲(chǔ)空間104,如圖8所示。圖7所示的復(fù)用方式可以節(jié)省存儲(chǔ)的空間,圖8所示的復(fù)用方式可以保持地圖對(duì)象的連貫性,具體實(shí)施時(shí)可以根據(jù)實(shí)際情況做適應(yīng)性修改,不限于上述內(nèi)容。圖4和圖5所示的存儲(chǔ)空間飽和時(shí),還可以重新獲取新的存儲(chǔ)空間來(lái)存儲(chǔ)后續(xù)的地圖對(duì)象。圖9為圖4所示的存儲(chǔ)空間飽和時(shí)重新獲取新的存儲(chǔ)空間的示意圖,如圖9所示,存儲(chǔ)空間10飽和時(shí),可以重新獲取新的存儲(chǔ)空間11,將下一個(gè)地圖對(duì)象存入存儲(chǔ)空間11中。
存儲(chǔ)空間11與存儲(chǔ)空間10的操作過(guò)程基本相似,將存儲(chǔ)空間11劃分成100個(gè)子存儲(chǔ)空間依次是子存儲(chǔ)空間201,子存儲(chǔ)空間202,子存儲(chǔ)空間203,子存儲(chǔ)空間204,子存儲(chǔ)空間205,子存儲(chǔ)空間206,子存儲(chǔ)空間207,子存儲(chǔ)空間208,子存儲(chǔ)空間209,子存儲(chǔ)空間210,子存儲(chǔ)空間211,子存儲(chǔ)空間212,子存儲(chǔ)空間213,子存儲(chǔ)空間214,子存儲(chǔ)空間
215,......,子存儲(chǔ)空間291,子存儲(chǔ)空間292,子存儲(chǔ)空間293,子存儲(chǔ)空間294,子存儲(chǔ)
空間295,子存儲(chǔ)空間296,子存儲(chǔ)空間297,子存儲(chǔ)空間298,子存儲(chǔ)空間299,子存儲(chǔ)空間300,并在第一個(gè)子存儲(chǔ)空間201設(shè)置新的標(biāo)識(shí)21 (圖中未顯示),用以標(biāo)識(shí)存儲(chǔ)空間11的使用狀態(tài)。具體的操作過(guò)程可參考前述內(nèi)容,此處不再贅述。存儲(chǔ)空間11與存儲(chǔ)空間10的大小可以相同也可以不同,具體實(shí)施時(shí),存儲(chǔ)空間11的容量可以根據(jù)后續(xù)待存儲(chǔ)的地圖對(duì)象的數(shù)據(jù)結(jié)構(gòu)、數(shù)目、大小確定。存儲(chǔ)空間11中存儲(chǔ)的對(duì)象的數(shù)據(jù)結(jié)構(gòu)通常與存儲(chǔ)空間10存儲(chǔ)的對(duì)象的數(shù)據(jù)結(jié)構(gòu)是相同的(如本實(shí)施例所示),根據(jù)實(shí)際情況也可以不同,不限于本實(shí)施例的內(nèi)容。存儲(chǔ)下一個(gè)地圖對(duì)象時(shí),由于存儲(chǔ)空間10的全部子存儲(chǔ)空間均已被使用,將標(biāo)識(shí)20設(shè)置在存儲(chǔ)空間10的最后一個(gè)子存儲(chǔ)空間200,并保存該標(biāo)識(shí)20。根據(jù)存儲(chǔ)空間11中的標(biāo)識(shí)21,將下一個(gè)地圖對(duì)象從存儲(chǔ)空間11的第一個(gè)子存儲(chǔ)空間201開(kāi)始順序存儲(chǔ),并更新標(biāo)識(shí)21于存儲(chǔ)空間11的子存儲(chǔ)空間204,最終的結(jié)果如圖9所示。圖10為圖5所示的存儲(chǔ)空間飽和時(shí)重新獲取新的存儲(chǔ)空間的示意圖,圖5所示的存儲(chǔ)空間10的子存儲(chǔ)空間101至子存儲(chǔ)空間198均已存入了地圖對(duì)象,還剩余子存儲(chǔ)空間199和子存儲(chǔ)空間200還未存入地圖對(duì)象,標(biāo)識(shí)20設(shè)于子存儲(chǔ)空間198。獲取如圖9中所示的存儲(chǔ)空間11后,可以先根據(jù)標(biāo)識(shí)20將部分下一個(gè)地圖對(duì)象存入存儲(chǔ)空間10的子存儲(chǔ)空間199和子存儲(chǔ)空間200,重新設(shè)置標(biāo)識(shí)20于存儲(chǔ)空間10的子存儲(chǔ)空間200,并保存標(biāo)識(shí)20 ;然后根據(jù)標(biāo)識(shí)21將剩余的部分下一個(gè)地圖對(duì)象,存入存儲(chǔ)空間11的子存儲(chǔ)空間201和子存儲(chǔ)空間202,重新設(shè)置標(biāo)識(shí)21于存儲(chǔ)空間11的子存儲(chǔ)空間202。最終的存儲(chǔ)結(jié)構(gòu)如圖10所示。圖11為圖5所示的存儲(chǔ)空間飽和時(shí)重新獲取新的存儲(chǔ)空間的示意圖,圖5所示的存儲(chǔ)空間10還剩余子存儲(chǔ)空間199和子存儲(chǔ)空間200未使用,在存儲(chǔ)下一個(gè)地圖對(duì)象時(shí),可以保存標(biāo)識(shí)20,廢棄子存儲(chǔ)空間199和子存儲(chǔ)空間200,根據(jù)標(biāo)識(shí)21直接從存儲(chǔ)空間11的第一個(gè)子存儲(chǔ)空間201開(kāi)始存儲(chǔ),順序存入下一個(gè)地圖對(duì)象,并重新設(shè)置標(biāo)識(shí)21的位置于子存儲(chǔ)空間204,如圖11所示。圖10所示的存儲(chǔ)方式可以節(jié)省存儲(chǔ)的空間,圖11所示的存儲(chǔ)方式可以保持地圖對(duì)象的連貫性,具體實(shí)施時(shí)可以根據(jù)實(shí)際情況做適應(yīng)性修改,不限于上述內(nèi)容。本發(fā)明的技術(shù)方案還提供了一種對(duì)象的存儲(chǔ)裝置包括:獲取單元,用以獲取第一預(yù)定容量的存儲(chǔ)空間;操作單元,用以設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí),所述標(biāo)識(shí)可以設(shè)置在已用空間的結(jié)束位置或可用空間的開(kāi)始位置;基于所述標(biāo)識(shí)存入對(duì)象,并更新所述標(biāo)識(shí),存入同一存儲(chǔ)空間的對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同;操作單元與獲取單元相連;獲取單元,還用以在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),重新獲取第二預(yù)定容量的存儲(chǔ)空間;在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),若所述已飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象為有效的對(duì)象,獲取單元重新獲取第二預(yù)定容量的存儲(chǔ)空間;
操作單元,還用以在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),復(fù)用已飽和的存儲(chǔ)空間;在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),若所述已飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象為無(wú)效的對(duì)象,操作單元復(fù)用已飽和的存儲(chǔ)空間。具體的,所述對(duì)象可以為地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo)和/或所述地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo)對(duì)應(yīng)的屏幕坐標(biāo)。所述第一預(yù)定容量和第二預(yù)定容量基于所述對(duì)象的大小、數(shù)目、數(shù)據(jù)結(jié)構(gòu)中的一種或幾種的組合確定。對(duì)于地圖數(shù)據(jù)(地圖對(duì)象)來(lái)講,所述第一預(yù)定容量和第二預(yù)定容量為一次加載的地圖數(shù)據(jù)的容量的至少兩倍。所述對(duì)象的存儲(chǔ)裝置還包括:劃分單元,用以在所述操作單元將所述對(duì)象存入所述存儲(chǔ)空間之前,將所述存儲(chǔ)空間劃分為子存儲(chǔ)空間,劃分單元與獲取單元相連;操作單元將所述對(duì)象存入一個(gè)或至少兩個(gè)連續(xù)的子存儲(chǔ)空間,所述標(biāo)識(shí)設(shè)置在最后一個(gè)已存入對(duì)象的子存儲(chǔ)空間或第一個(gè)未存入對(duì)象的子存儲(chǔ)空間。所述對(duì)象的存儲(chǔ)裝置通常集成在終端中,所述終端可以是車(chē)載系統(tǒng)、手機(jī)、筆記本電腦、臺(tái)式電腦、平板電腦中的一種。本發(fā)明的技術(shù)方案至少具有以下有益效果:獲取第一預(yù)定容量的存儲(chǔ)空間,并設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí),基于該標(biāo)識(shí)存入對(duì)象。這可以保證每次存入對(duì)象時(shí),本次存入的對(duì)象是緊接著上次最后一個(gè)存儲(chǔ)的對(duì)象存儲(chǔ)的,對(duì)象和對(duì)象之間是連續(xù)存儲(chǔ)的,節(jié)省了內(nèi)存的存儲(chǔ)空間。由于該存儲(chǔ)空間的容量較大,可以存儲(chǔ)較多的對(duì)象,減少了系統(tǒng)分配內(nèi)存的次數(shù),不僅提高了系統(tǒng)的效率,并且大塊的存儲(chǔ)空間可以減小了碎片的產(chǎn)生幾率。獲取的存儲(chǔ)空間處于飽和時(shí),可以復(fù)用已飽和的存儲(chǔ)空間,不需要將該存儲(chǔ)空間交還給系統(tǒng)。由于對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同,因此存儲(chǔ)空間處于飽和時(shí),新存入的對(duì)象可以覆蓋無(wú)效的對(duì)象,并且數(shù)據(jù)運(yùn)算過(guò)程中產(chǎn)生的新數(shù)據(jù)可以覆蓋舊數(shù)據(jù)。這種復(fù)用方式減少了存儲(chǔ)空間分配和回收的操作,提高了存儲(chǔ)空間的利用率,提高了數(shù)據(jù)運(yùn)算的效率。獲取的存儲(chǔ)空間處于飽和時(shí),也可以再次獲取新的存儲(chǔ)空間。若飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象均為有效的對(duì)象,才會(huì)再次獲取新的存儲(chǔ)空間,減少了系統(tǒng)分配內(nèi)存的次數(shù),并且提高了系統(tǒng)的運(yùn)行效率。這樣不僅保護(hù)已存儲(chǔ)的對(duì)象不會(huì)被覆蓋,避免數(shù)據(jù)丟失,而且新獲取的存儲(chǔ)空間可以存儲(chǔ)更多的對(duì)象。本發(fā)明雖然已以較佳實(shí)施例公開(kāi)如上,但其并不是用來(lái)限定本發(fā)明,任何本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍內(nèi),都可以利用上述揭示的方法和技術(shù)內(nèi)容對(duì)本發(fā)明技術(shù)方案做出可能的變動(dòng)和修改,因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所作的任何簡(jiǎn)單修改、等同變化及修飾,均屬于本發(fā)明技術(shù)方案的保護(hù)范圍。
權(quán)利要求
1.一種對(duì)象的存儲(chǔ)方法,其特征在于,包括: 獲取第一預(yù)定容量的存儲(chǔ)空間,設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí); 基于所述標(biāo)識(shí)存入對(duì)象,并更新所述標(biāo)識(shí),存入同一存儲(chǔ)空間的對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同; 所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),重新獲取第二預(yù)定容量的存儲(chǔ)空間或復(fù)用已飽和的存儲(chǔ)空間。
2.如權(quán)利要求1所述的對(duì)象的存儲(chǔ)方法,其特征在于,所述對(duì)象為地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo)和/或所述地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo)對(duì)應(yīng)的屏幕坐標(biāo),所述第一預(yù)定容量和第二預(yù)定容量均為一次加載的地圖數(shù)據(jù)的容量的至少兩倍。
3.如權(quán)利要求1所述的對(duì)象的存儲(chǔ)方法,其特征在于,所述標(biāo)識(shí)設(shè)置在已用空間的結(jié)束位置或可用空間的開(kāi)始位置。
4.如權(quán)利要求1所述的對(duì)象的存儲(chǔ)方法,其特征在于,還包括:將所述對(duì)象存入所述存儲(chǔ)空間之前,將所述存儲(chǔ)空間劃分為子存儲(chǔ)空間; 所述對(duì)象存入一個(gè)或至少兩個(gè)連續(xù)的子存儲(chǔ)空間,所述標(biāo)識(shí)設(shè)置在最后一個(gè)已存入對(duì)象的子存儲(chǔ)空間或第一個(gè)未存入對(duì)象的子存儲(chǔ)空間。
5.如權(quán)利要求1所述的對(duì)象的存儲(chǔ)方法,其特征在于,所述第一預(yù)定容量和第二預(yù)定容量基于所述對(duì)象的大小、數(shù)目、數(shù)據(jù)結(jié)構(gòu)中的一種或幾種的組合確定。
6.如權(quán)利要求1所述的對(duì)象的存儲(chǔ)方法,其特征在于,所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),若所述已飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象為無(wú)效的對(duì)象,則復(fù)用已飽和的存儲(chǔ)空間。`
7.如權(quán)利要求1所述的對(duì)象的存儲(chǔ)方法,其特征在于,所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),若所述已飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象為有效的對(duì)象,則重新獲取第二預(yù)定容量的存儲(chǔ)空間。
8.一種對(duì)象的存儲(chǔ)裝置,其特征在于,包括: 獲取單元,用以獲取第一預(yù)定容量的存儲(chǔ)空間; 操作單元,用以設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí),基于所述標(biāo)識(shí)存入對(duì)象,并更新所述標(biāo)識(shí),存入同一存儲(chǔ)空間的對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同; 所述獲取單元,還用以在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),重新獲取第二預(yù)定容量的存儲(chǔ)空間; 所述操作單元,還用以在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),復(fù)用已飽和的存儲(chǔ)空間。
9.如權(quán)利要求8所述的對(duì)象的存儲(chǔ)裝置,其特征在于,所述對(duì)象為地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo)和/或所述地圖數(shù)據(jù)中的點(diǎn)的位置坐標(biāo)對(duì)應(yīng)的屏幕坐標(biāo),所述第一預(yù)定容量和第二預(yù)定容量均為一次加載的地圖數(shù)據(jù)的容量的至少兩倍。
10.如權(quán)利要求8所述的對(duì)象的存儲(chǔ)裝置,其特征在于,所述操作單元將所述標(biāo)識(shí)設(shè)置在已用空間的結(jié)束位置或可用空間的開(kāi)始位置。
11.如權(quán)利要求8所述的對(duì)象的存儲(chǔ)裝置,其特征在于,還包括劃分單元,用以在所述操作單元將所述對(duì)象存入所述存儲(chǔ)空間之前,將所述存儲(chǔ)空間劃分為子存儲(chǔ)空間,所述操作單元將所述對(duì)象存入一個(gè)或至少兩個(gè)連續(xù)的子存儲(chǔ)空間,所述標(biāo)識(shí)設(shè)置在最后一個(gè)已存入對(duì)象的子存儲(chǔ)空間或第一個(gè)未存入對(duì)象的子存儲(chǔ)空間。
12.如權(quán)利要求8所述的對(duì)象的存儲(chǔ)裝置,其特征在于,所述第一預(yù)定容量和第二預(yù)定容量基于所述對(duì)象的大小、數(shù)目、數(shù)據(jù)結(jié)構(gòu)中的一種或幾種的組合確定。
13.如權(quán)利要求8所述的對(duì)象的存儲(chǔ)裝置,其特征在于,在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),若所述已飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象為無(wú)效的對(duì)象,所述操作單元復(fù)用已飽和的存儲(chǔ)空間。
14.如權(quán)利要求8所述的對(duì)象的存儲(chǔ)裝置,其特征在于,在所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),若所述已飽和的存儲(chǔ)空間中存儲(chǔ)的對(duì)象為有效的對(duì)象,所述獲取單元重新獲取第二預(yù)定容量的存儲(chǔ)空間。
15.一種終端,其特征在于,包括如權(quán)利要求8至14任一項(xiàng)所述的對(duì)象的存儲(chǔ)裝置。
16.如權(quán)利要求15所述的終端,其特征在于,所述終端為車(chē)載系統(tǒng)、手機(jī)、筆記本電腦、臺(tái)式電腦、平板電腦中的一種 。
全文摘要
一種對(duì)象的存儲(chǔ)方法及裝置、終端,所述對(duì)象的存儲(chǔ)方法包括獲取第一預(yù)定容量的存儲(chǔ)空間,設(shè)置標(biāo)示所述存儲(chǔ)空間的使用狀態(tài)的標(biāo)識(shí);基于所述標(biāo)識(shí)存入對(duì)象,并更新所述標(biāo)識(shí),存入同一存儲(chǔ)空間的對(duì)象的數(shù)據(jù)結(jié)構(gòu)相同;所述存儲(chǔ)空間的使用狀態(tài)為飽和時(shí),重新獲取第二預(yù)定容量的存儲(chǔ)空間或復(fù)用已飽和的存儲(chǔ)空間。本發(fā)明的技術(shù)方案提高了數(shù)據(jù)的運(yùn)算效率,減小了數(shù)據(jù)存儲(chǔ)及運(yùn)算過(guò)程中產(chǎn)生的碎片。
文檔編號(hào)G06F12/02GK103164340SQ20111042551
公開(kāi)日2013年6月19日 申請(qǐng)日期2011年12月16日 優(yōu)先權(quán)日2011年12月16日
發(fā)明者王軍 申請(qǐng)人:上海博泰悅臻電子設(shè)備制造有限公司