[發(fā)明專利]定時器實現方法及裝置在審
| 申請?zhí)枺?/td> | 201210075719.2 | 申請日: | 2012-03-21 |
| 公開(公告)號: | CN103324469A | 公開(公告)日: | 2013-09-25 |
| 發(fā)明(設計)人: | 李紅波 | 申請(專利權)人: | 騰訊科技(深圳)有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 北京三高永信知識產權代理有限責任公司 11138 | 代理人: | 羅振安 |
| 地址: | 518000 廣東省深*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 定時器 實現 方法 裝置 | ||
1.一種定時器實現方法,其特征在于,所述方法包括:
將新建定時器按照觸發(fā)時間由早到晚的順序插入預先設置的定時器隊列中進行存儲,所述定時器具有自身的觸發(fā)時間和回調方法;
獲取當前在所述定時器隊列中排在隊首的定時器的觸發(fā)時間和回調方法;
根據所述觸發(fā)時間和回調方法開啟計時線程,所述計時線程在所述觸發(fā)時間指定的時刻自動調用所述回調方法并執(zhí)行。
2.根據權利要求1所述的定時器實現方法,其特征在于,所述將新建定時器按照觸發(fā)時間由早到晚的順序插入預先設置的定時器隊列中進行存儲,具體包括:
獲取一個新建定時器,所述新建定時器具有自身的觸發(fā)時間和回調方法;
判斷所述新建定時器的觸發(fā)時間與所述定時器隊列中已存儲的每一個定時器的觸發(fā)時間的早晚;
如果判斷所述新建定時器的觸發(fā)時間早于所述定時器隊列中一部分定時器的觸發(fā)時間,則將所述新建定時器存儲入所述定時器隊列時,存儲于所述一部分定時器之前;
如果判斷所述新建定時器的觸發(fā)時間晚于所述定時器隊列中另一部分定時器的觸發(fā)時間,則將所述新建定時器存儲入所述定時器隊列時,存儲于所述另一部分定時器之后。
3.根據權利要求1所述的定時器實現方法,其特征在于,所述根據所述觸發(fā)時間和回調方法開啟計時線程,所述計時線程在所述觸發(fā)時間指定的時刻自動調用所述回調方法并執(zhí)行之后,還包括:
從所述定時器隊列中刪除所述回調方法已執(zhí)行的定時器;
繼續(xù)執(zhí)行獲取當前在所述定時器隊列中排在隊首的定時器的觸發(fā)時間和回調方法的步驟。
4.根據權利要求1所述的定時器實現方法,其特征在于,所述根據所述觸發(fā)時間和回調方法開啟計時線程,所述計時線程在所述觸發(fā)時間指定的時刻自動調用所述回調方法并執(zhí)行之后,還包括:
判斷所述回調方法已執(zhí)行的定時器的是否具有循環(huán)周期信息;
如果是,則獲取所述循環(huán)周期信息中的循環(huán)周期;
將所述回調方法已執(zhí)行的定時器的觸發(fā)時間修改為:原觸發(fā)時間加上所述循環(huán)周期;
將修改觸發(fā)時間后的所述定時器重新插入所述定時器序列中進行存儲。
5.根據權利要求1至4任一所述的定時器實現方法,其特征在于,所述方法還包括:
接收作用于所述定時器隊列中的一個定時器的觸發(fā)時間修改信號;
根據所述觸發(fā)時間修改信號修改所述定時器的觸發(fā)時間;
根據修改后的觸發(fā)時間調整所述定時器在所述定時器隊列中的位置以滿足所述觸發(fā)時間由早到晚的存儲順序。
6.一種定時器實現裝置,其特征在于,所述裝置包括:
隊列管理模塊,用于將新建定時器按照觸發(fā)時間由早到晚的順序插入預先設置的定時器隊列中進行存儲,所述定時器具有自身的觸發(fā)時間和回調方法;
信息獲取模塊,用于獲取當前在所述定時器隊列中排在隊首的定時器的觸發(fā)時間和回調方法;
定時執(zhí)行模塊,用于根據所述觸發(fā)時間和回調方法開啟計時線程,所述計時線程在所述觸發(fā)時間指定的時刻自動調用所述回調方法并執(zhí)行。
7.根據權利要求6所述的定時器實現裝置,其特征在于,所述隊列管理模塊包括:定時器獲取單元、觸發(fā)時間判斷單元和定時器存儲單元;
所述定時器獲取單元,用于獲取一個新建定時器,所述新建定時器具有自身的觸發(fā)時間和回調方法;
所述觸發(fā)時間判斷單元,用于判斷所述新建定時器的觸發(fā)時間與所述定時器隊列中已存儲的每一個定時器的觸發(fā)時間的早晚;
所述定時器存儲單元,用于如果所述觸發(fā)時間判斷單元判斷所述新建定時器的觸發(fā)時間早于所述定時器隊列中一部分定時器的觸發(fā)時間,則將所述新建定時器存儲入所述定時器隊列時,存儲于所述一部分定時器之前;
所述定時器存儲單元,還用于如果所述觸發(fā)時間判斷單元判斷所述新建定時器的觸發(fā)時間晚于所述定時器隊列中另一部分定時器的觸發(fā)時間,則將所述新建定時器存儲入所述定時器隊列時,存儲于所述另一部分定時器之后。
8.根據權利要求6所述的定時器實現裝置,其特征在于,所述隊列管理模塊,還具體包括:定時器刪除單元;
所述定時器刪除單元,用于從所述定時器隊列中刪除所述回調方法已執(zhí)行的定時器;
所述信息獲取模塊,還用于所述定時器刪除單元刪除所述回調方法已執(zhí)行的定時器之后,繼續(xù)獲取當前在所述定時器隊列中排在隊首的定時器的觸發(fā)時間和回調方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于騰訊科技(深圳)有限公司,未經騰訊科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210075719.2/1.html,轉載請聲明來源鉆瓜專利網。





