[發明專利]任務處理方法和裝置有效
| 申請號: | 201010299851.2 | 申請日: | 2010-09-29 |
| 公開(公告)號: | CN101963922A | 公開(公告)日: | 2011-02-02 |
| 發明(設計)人: | 王昊沙 | 申請(專利權)人: | 用友軟件股份有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46;G06F9/52 |
| 代理公司: | 北京友聯知識產權代理事務所(普通合伙) 11343 | 代理人: | 尚志峰;汪海屏 |
| 地址: | 100094 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 任務 處理 方法 裝置 | ||
1.一種任務處理方法,其特征在于,包括:
步驟102,接收輸入的任務;
步驟104,判斷所述任務是否具有同步屬性,在所述任務具有同步屬性時,進入步驟106,在所述任務不具有同步屬性時,進入步驟110;
所述步驟106,根據所述任務的同步屬性,在當前執行任務中查找所述任務對應的排他任務;
步驟108,在當前執行任務中存在所述任務對應的排他任務時,不執行所述任務,直至所述當前執行任務中不存在所述任務對應的排他任務,
所述步驟110,執行所述任務。
2.根據權利要求1所述的任務處理方法,其特征在于,所述步驟108中,在當前執行任務中存在所述任務對應的排他任務時,根據所述任務的同步屬性,將所述任務分配至對應的排他隊列,在所述當前執行任務中不存在所述任務對應的排他任務時,從所述任務對應的排他隊列里取出所述任務,以待執行。
3.根據權利要求2所述的任務處理方法,其特征在于,排他隊列中的所有任務均具有優先級,從所述排他隊列中取出任務時,先取出優先級最高的任務。
4.根據權利要求2所述的任務處理方法,其特征在于,在所述步驟110中,所述任務通過線程池提供的線程執行。
5.根據權利要求4所述的任務處理方法,其特征在于,在所述步驟110中,所述當前執行任務占用所述線程池的所有線程時,使所述任務進入等待狀態,直至所述線程池中存在空余線程,使用所述空余線程執行所述任務。
6.根據權利要求5所述的任務處理方法,其特征在于,處于所述等待狀態的所有任務均具有優先級,在所述線程池里僅出現一個空余線程時,將所述一個空余線程用于執行優先級最高的任務。
7.根據權利要求2至6中任一項所述的任務處理方法,其特征在于,所述步驟108中,所述任務具有多個同步屬性,以及在當前執行任務中存在對應任務的不同同步屬性的多個排他任務,根據所述不同同步屬性的優先程度,將所述任務分配至優先程度最高的同步屬性對應的排他隊列,
排他隊列包括:
全局排他隊列,所述全局排他隊列中的任務只能單獨執行;
類別排他隊列,所述類別排他隊列中的任務不能與所述類別排他隊列對應類型的任務同時執行。
8.一種任務處理裝置,其特征在于,包括:
調度模塊,判斷輸入的任務是否具有同步屬性,在所述任務具有同步屬性時,將所述任務提交至同步控制模塊,在所述任務不具有同步屬性時,將所述任務提交至任務執行模塊;
所述同步控制模塊,根據所述任務的同步屬性,在當前執行任務中查找所述任務對應的排他任務,并在所述當前執行任務中不存在所述任務對應的排他任務時,將所述任務通過所述調度模塊提交至所述任務執行模塊;
所述任務執行模塊,執行所述任務。
9.根據權利要求8所述的任務處理裝置,其特征在于,還包括:
同步隊列模塊,提供排他隊列,所述同步控制模塊在當前執行任務中存在所述任務對應的排他任務時,根據所述任務的同步屬性,通過所述同步隊列模塊將所述任務分配至對應的排他隊列,在所述當前執行任務中不存在所述任務對應的排他任務時,通過所述同步隊列模塊從所述任務對應的排他隊列里取出所述任務,由所述調度模塊將所述任務提交至所述任務執行模塊,以待執行。
10.根據權利要求9所述的任務處理裝置,其特征在于,所述同步隊列模塊還供用戶制定不同類型的排他隊列。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于用友軟件股份有限公司,未經用友軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010299851.2/1.html,轉載請聲明來源鉆瓜專利網。





