[發(fā)明專利]SPA中更新虛擬頁面實例狀態(tài)的方法和裝置有效
| 申請?zhí)枺?/td> | 202010388536.0 | 申請日: | 2020-05-09 |
| 公開(公告)號: | CN111625239B | 公開(公告)日: | 2023-05-02 |
| 發(fā)明(設(shè)計)人: | 唐溢泓;崔偉毅;傅騰;徐嘯;胡鵬;彭茜;楊雯雯;王俊龍 | 申請(專利權(quán))人: | 北京仁科互動網(wǎng)絡(luò)技術(shù)有限公司 |
| 主分類號: | G06F8/38 | 分類號: | G06F8/38 |
| 代理公司: | 北京路浩知識產(chǎn)權(quán)代理有限公司 11002 | 代理人: | 鄭朝然 |
| 地址: | 100020 北京*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | spa 更新 虛擬 頁面 實例 狀態(tài) 方法 裝置 | ||
本發(fā)明實施例提供一種SPA中更新虛擬頁面實例狀態(tài)方法和裝置,該方法包括:接收用戶的頁面請求,創(chuàng)建SPA的虛擬頁面實例;接收SPA中內(nèi)存監(jiān)控器裝置的實時檢測結(jié)果,確定所述虛擬頁面實例的存儲方式,其中,所述存儲方式包括前臺內(nèi)部存儲器存儲、后臺內(nèi)部存儲器存儲以及外部存儲器存儲;若接收到用戶的中間輸入,則命令SPA中通知服務(wù)裝置向訂閱通知服務(wù)的虛擬頁面實例發(fā)布狀態(tài)更新消息,并根據(jù)訂閱通知服務(wù)的虛擬頁面實例的存儲方式更新訂閱通知服務(wù)的虛擬頁面實例的狀態(tài)。本發(fā)明實施例提供的方法和裝置,實現(xiàn)了無論虛擬頁面實例的存儲方式對SPA中所有虛擬頁面實例狀態(tài)進行更新且SPA中虛擬頁面實例的存儲合理利用了內(nèi)存。
技術(shù)領(lǐng)域
本發(fā)明涉及單頁應(yīng)用程序技術(shù)領(lǐng)域,尤其涉及一種SPA中更新虛擬頁面實例狀態(tài)的方法和裝置。
背景技術(shù)
在現(xiàn)代業(yè)務(wù)單頁應(yīng)用程序中,無法避免復(fù)雜的情況,越來越多的用戶交互將導(dǎo)致更多的內(nèi)存使用。尤其移動設(shè)備的所有資源都受到限制,并且內(nèi)存與所有正在運行的應(yīng)用程序/操作系統(tǒng)(OS)共享。
在單頁應(yīng)用程序(SPA)中,所有UI都在一個瀏覽器窗口中,無法從OS內(nèi)存管理中受益,如果沒有足夠的系統(tǒng)內(nèi)存來支持SPA保持正確的狀態(tài),SPA可能會崩潰,最終用戶可能無法獲得更好的用戶體驗。從瀏覽器的角度來看,它只能在內(nèi)存不足時觸發(fā)垃圾回收,但對于SPA必須使用更多的內(nèi)存卻無法進行垃圾回收這一事實沒有任何幫助。
目前的SPA中存在的一個問題是,內(nèi)存中能夠存儲的頁面是有限的,因此,有些頁面需要存儲于除了內(nèi)存的其他的位置,而當某一頁面的內(nèi)容由于用戶操作有更新時需要更新所有與該頁面有關(guān)聯(lián)的頁面的對應(yīng)內(nèi)容,但是現(xiàn)有的SPA僅支持更新內(nèi)存中存儲的與該頁面有關(guān)聯(lián)的頁面,對于存儲于非內(nèi)存的其他存儲器的頁面狀態(tài)無法做到實時更新。
因此,如何避免現(xiàn)有的SPA中所有虛擬頁面實例狀態(tài)的更新被存儲位置所限制,且SPA中虛擬頁面實例的存儲沒有合理利用內(nèi)存的情況,仍然是本領(lǐng)域技術(shù)人員亟待解決的問題。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種SPA中更新虛擬頁面實例狀態(tài)的方法和裝置,用以實現(xiàn)了無論虛擬頁面實例的存儲方式對SPA中所有虛擬頁面實例狀態(tài)進行更新且SPA中虛擬頁面實例的存儲合理利用了內(nèi)存。
第一方面,本發(fā)明實施例提供一種SPA中更新虛擬頁面實例狀態(tài)的方法,包括:
接收用戶的頁面請求,創(chuàng)建SPA的虛擬頁面實例;
接收SPA中內(nèi)存監(jiān)控器裝置的實時檢測結(jié)果,確定所述虛擬頁面實例的存儲方式,其中,所述存儲方式包括前臺內(nèi)部存儲器存儲、后臺內(nèi)部存儲器存儲以及外部存儲器存儲;
若接收到用戶的中間輸入,則命令SPA中通知服務(wù)裝置向訂閱通知服務(wù)的虛擬頁面實例發(fā)布狀態(tài)更新消息,并根據(jù)訂閱通知服務(wù)的虛擬頁面實例的存儲方式更新訂閱通知服務(wù)的虛擬頁面實例的狀態(tài)。
優(yōu)選地,該方法中,所述創(chuàng)建SPA的虛擬頁面實例,具體包括:
若所述頁面請求未被實例化,則下載資源創(chuàng)建第一UI樣式實例和第一UI域?qū)嵗瑯?gòu)建與所述第一UI樣式實例和所述第一UI域?qū)嵗ヅ涞牡谝粻顟B(tài)數(shù)據(jù)實例,基于所述第一UI樣式實例、所述第一UI域?qū)嵗退龅谝粻顟B(tài)數(shù)據(jù)實例創(chuàng)建虛擬頁面實例,所述資源包括UI域模型、虛擬頁面js和虛擬頁面樣式;
若所述頁面請求已被實例化且所述頁面請求對應(yīng)的虛擬頁面實例存儲于外部存儲器,則從外部存儲器恢復(fù)所述虛擬頁面的UI域數(shù)據(jù)和狀態(tài)數(shù)據(jù),基于所述UI域數(shù)據(jù)和狀態(tài)數(shù)據(jù)構(gòu)建第二UI域?qū)嵗偷诙顟B(tài)數(shù)據(jù)實例,構(gòu)建與所述第二UI域?qū)嵗退龅诙顟B(tài)數(shù)據(jù)實例匹配的第二UI樣式實例,基于所述第二UI樣式實例、所述第二UI域?qū)嵗退龅诙顟B(tài)數(shù)據(jù)實例創(chuàng)建虛擬頁面實例;
若所述頁面請求已被實例化且所述頁面請求對應(yīng)的虛擬頁面實例存儲于后臺內(nèi)部存儲器,則直接切換至所述虛擬頁面實例。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京仁科互動網(wǎng)絡(luò)技術(shù)有限公司,未經(jīng)北京仁科互動網(wǎng)絡(luò)技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010388536.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





