[發明專利]基于線程阻塞的內存清理方法、移動終端及可讀存儲介質有效
| 申請號: | 201711245137.3 | 申請日: | 2017-11-30 |
| 公開(公告)號: | CN108052390B | 公開(公告)日: | 2021-11-16 |
| 發明(設計)人: | 周龍 | 申請(專利權)人: | 努比亞技術有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F11/30 |
| 代理公司: | 深圳協成知識產權代理事務所(普通合伙) 44458 | 代理人: | 章小燕 |
| 地址: | 518057 廣東省深圳市南山區高新區北環大道9018*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 線程 阻塞 內存 清理 方法 移動 終端 可讀 存儲 介質 | ||
本發明公開了一種基于線程阻塞的內存清理方法、移動終端及可讀存儲介質,通過在監測到進程間數據通信時,以間隔預設時間獲取參與該進程間數據通信的當前進程的基礎進程信息,并基于該基礎進程信息判斷進行進程間數據通信的當前進程是否具備預設線程的創建條件,并判斷當前進程中的每個已創建預設線程是否均處于阻塞狀態,然后在當前進程不具備預設線程的創建條件,且每個已創建預設線程的當前狀態均為阻塞狀態時,根據已創建預設線程的阻塞時長確定待清理線程,并釋放該待清理線程的內存占用資源,從而實現在預設線程(Binder線程)出現阻塞時,自動清理內存,預留充裕的內存,避免系統頻繁卡頓。
技術領域
本發明涉及移動終端技術領域,尤其涉及一種基于線程阻塞的內存清理方法、移動終端及可讀存儲介質。
背景技術
隨著移動終端技術的發展,移動終端的硬件配置也越來越好,能夠實現的功能也越來越多,且集成的APP(Application,應用程序)也越來越多。目前基于移動終端的不同場景的應用程序數以萬計,隨著用戶在移動終端上安裝的第三方應用和服務軟件數量越來越多。不同的應用進行進程間數據通信方式主要是通過Binder線程進行的,在進程間數據通信過程中,如果Binder線程出現阻塞,會導致系統中斷當前的進程間數據通信。
移動終端通過Binder線程進行進程間數據通信時,該Binder線程會占用一部分內存資源,而當Binder線程出現阻塞時,該Binder線程占用的內存資源無法釋放,而移動終端的內存資源是有限的,在內存資源不足時,容易出現系統頻繁卡頓。因此,如何在Binder線程出現阻塞時,自動清理內存,預留充裕的內存,避免系統頻繁卡頓是目前亟待解決的問題。
上述內容僅用于輔助理解本發明的技術方案,并不代表承認上述內容是現有技術。
發明內容
本發明的主要目的在于提供一種基于線程阻塞的內存清理方法、移動終端及計算機可讀存儲介質,旨在解決如何在Binder線程出現阻塞時,自動清理內存,預留充裕的內存,避免系統頻繁卡頓的技術問題。
為實現上述目的,本發明提供一種基于線程阻塞的內存清理方法,所述基于線程阻塞的內存清理方法包括以下步驟:
當監測到進程間數據通信時,以間隔預設時間獲取參與所述進程間數據通信的當前進程的基礎進程信息;
根據所述基礎進程信息判斷所述當前進程是否具備預設線程的創建條件;
在所述當前進程不具備預設線程的創建條件時,判斷所述當前進程的每個已創建預設線程是否均為阻塞狀態;
在所述當前進程的每個已創建預設線程均為阻塞狀態時,根據所述當前進程的已創建預設線程的阻塞時長所處的時長區間確定待清理線程,并釋放所述待清理線程的內存占用資源。
可選地,所述根據所述基礎進程信息判斷所述當前進程是否具備預設線程的創建條件的步驟包括:
從所述基礎進程信息中提取所述當前進程的預設線程的已創建數和最大創建數,并判斷所述已創建數是否小于所述最大創建數;
若所述已創建數小于所述最大創建數,則判定所述當前進程具備預設線程的創建條件;
若所述已創建數等于所述最大創建數,則判定所述當前進程不具備預設線程的創建條件。
可選地,所述判斷所述當前進程的每個已創建預設線程是否均為阻塞狀態的步驟包括:
判斷所述當前進程的每個已創建預設線程基于預設操作獲取的狀態返回值是否為預設狀態返回值;
若所述當前進程的每個已創建預設線程基于預設操作獲取的狀態返回值均為預設狀態返回值,則判定所述當前進程的每個已創建預設線程均為阻塞狀態;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于努比亞技術有限公司,未經努比亞技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711245137.3/2.html,轉載請聲明來源鉆瓜專利網。





