[發明專利]一種變量回收方法及裝置有效
| 申請號: | 201710432600.9 | 申請日: | 2017-06-09 |
| 公開(公告)號: | CN107168764B | 公開(公告)日: | 2021-06-11 |
| 發明(設計)人: | 馬玄玄 | 申請(專利權)人: | 鄭州云海信息技術有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 羅滿 |
| 地址: | 450018 河南省鄭州市*** | 國省代碼: | 河南;41 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 變量 回收 方法 裝置 | ||
本發明公開了一種變量回收方法及裝置,方法包括:在對變量聲明時,對所述變量賦予標識,所述標識指示所述變量被回收的條件;在程序運行中,當滿足所述變量被回收的條件時,將所述變量回收,從內存中移除。本發明變量回收方法及裝置,通過給變量賦予標識,標識指示變量應該被回收時要滿足的條件,在程序運行中當滿足標識指示的條件時則將變量回收,從而能夠及時地將變量回收,及時地將不需要存放在內存中的變量從內存中移除,可克服現有方法對變量回收不及時的缺陷。
技術領域
本發明涉及計算機技術領域,特別是涉及一種變量回收方法及裝置。
背景技術
在軟件開發過程中,我們通常會定義一些變量來完成功能的實現,而這些變量在運行過程中要存在內存中。如果沒有垃圾回收機制,則隨著運行時間的延長,內存就會被消耗殆盡,會影響應用程序的運行,比如對于瀏覽器會出現卡頓現象,出現崩潰。
為解決上述問題,各類編程語言有獨特的或者共同的垃圾回收機制。目前,瀏覽器端的語言主要有兩種變量回收方式,一種是標記清除,即在變量聲明時,標記其所在的環境變量,離開環境則回收該變量。第二種為引用計數,即跟蹤記錄每個值被使用的次數,當聲明一個變量,毎次將一個引用類型賦值給該變量時,這個值的引用次數就加一,如果該變量的值成為另外一個,則這個值的引用次數減一,當這個值的引用次數變為零時,則將其占用的空間回收。但這兩種回收方式都存在對變量回收不及時的弊端。
發明內容
本發明的目的是提供一種變量回收方法及裝置。能夠及時地將變量回收,克服了現有技術的弊端。
為實現上述目的,本發明提供如下技術方案:
一種變量回收方法,包括:
在對變量聲明時,對所述變量賦予標識,所述標識指示所述變量被回收的條件;
在程序運行中,當滿足所述變量被回收的條件時,將所述變量回收,從內存中移除。
可選地,所述變量被回收的條件為所述變量被回收的時刻;
所述在程序運行中,當滿足所述變量被回收的條件時,將所述變量回收包括:
在程序運行中,當到達所述標識指示的時刻時,將所述變量回收。
可選地,所述變量被回收的條件為所述變量在預設位置被引用;
所述在程序運行中,當滿足所述變量被回收的條件時,將所述變量回收包括:
在程序運行中,當所述變量在所述預設位置被引用后,將所述變量回收。
可選地,在所述在對變量聲明時,對所述變量賦予標識之前還包括:
根據所述變量,為所述變量設計用于指示所述變量被回收的條件的所述標識。
可選地,所述程序為瀏覽器應用程序。
一種變量回收裝置,包括:
標識模塊,用于在對變量聲明時,對所述變量賦予標識,所述標識指示所述變量被回收的條件;
回收模塊,用于在程序運行中,當滿足所述變量被回收的條件時,將所述變量回收,從內存中移除。
可選地,所述變量被回收的條件為所述變量被回收的時刻;
所述回收模塊用于在程序運行中,當滿足所述變量被回收的條件時,將所述變量回收包括:
所述回收模塊具體用于在程序運行中,當到達所述標識指示的時刻時,將所述變量回收。
可選地,所述變量被回收的條件為所述變量在預設位置被引用;
所述回收模塊用于在程序運行中,當滿足所述變量被回收的條件時,將所述變量回收包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于鄭州云海信息技術有限公司,未經鄭州云海信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710432600.9/2.html,轉載請聲明來源鉆瓜專利網。





