[發明專利]一種信號量許可的調整方法及裝置在審
| 申請號: | 201910187624.1 | 申請日: | 2019-03-12 |
| 公開(公告)號: | CN110008012A | 公開(公告)日: | 2019-07-12 |
| 發明(設計)人: | 柳芊 | 申請(專利權)人: | 平安普惠企業管理有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 廣州三環專利商標代理有限公司 44202 | 代理人: | 郝傳鑫;熊永強 |
| 地址: | 518000 廣東省深圳市前海深港合作區前*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 信號量 許可 線程池 第二信號 借用 業務過程優化 分派 參數調整 參數匹配 參數確定 獲取目標 空閑線程 參數組 零時 輪詢 調用 申請 第一線 | ||
1.一種信號量許可的調整方法,其特征在于,包括:
獲取目標任務對應的第一線程池,并獲取與所述第一線程池匹配的第一信號量參數,所述第一信號量參數用于指示所述第一線程池的許可的數量,所述第一線程池的許可用于指示所述第一線程池的空閑線程;
當所述第一信號量參數所指示的許可的數量為零且與所述第一信號量參數對應的第一借用參數為是時,獲取所述第一信號量參數所屬的信號量參數組,所述信號量參數組中包括所述第一信號量參數以及N個第二信號量參數,所述第一借用參數用于指示線程池是否允許借用其他線程池的許可,N為大于零的整數;
將所述N個第二信號量參數中對應的第二借用參數為是的第二信號量參數確定為第三信號量參數,得到M個第三信號量參數,所述第二借用參數用于指示線程池的許可是否允許被其他線程池借用,M小于或等于N;
當輪詢到所述M個第三信號量參數中的第i個第三信號量參數所指示的許可的數量大于零時,將所述第i個第三信號量參數確定為第四信號量參數,i為不大于M的正整數;
將與所述第四信號量參數匹配的第四線程池中的任一許可分派給所述目標任務,并調用所述第四線程池中分派給所述目標任務的許可對應的空閑線程處理所述目標任務。
2.根據權利要求1所述的方法,其特征在于,所述在將與所述第四信號量參數匹配的第四線程池中的任一許可分派給所述目標任務之后,所述方法包括:
將所述第四信號量參數所指示的許可的數量減一;
所述在調用所述第四線程池中分派給所述目標任務的許可對應的空閑線程處理所述目標任務之后,所述方法還包括:
當所述目標任務處理完成時,釋放所述第四線程池中分派給所述目標任務的許可對應的空閑線程,并將所述第四信號量參數所指示的許可的數量加一。
3.根據權利要求1或2所述的方法,其特征在于,所述方法還包括:
當輪詢到所述M個第三信號量參數中的各個第三信號量參數所指示的許可的數量均為零時,將所述目標任務順序存儲在所述第一線程池的許可等待隊列中,以等待所述第一信號量參數所指示的許可的數量大于零;
當所述第一信號量參數所指示的許可的數量大于零時,將所述第一線程池中的許可分派給所述目標任務,并調用所述第一線程池中分派給所述目標任務的許可對應的空閑線程處理所述目標任務。
4.根據權利要求1-3任一項所述的方法,其特征在于,所述方法還包括:
當所述第一信號量參數所指示的許可的數量為零且與所述第一信號量參數對應的第一借用參數為否時,將所述目標任務順序存儲在所述第一線程池的許可等待隊列中,以等待所述第一信號量參數所指示的許可的數量大于零;
當所述第一信號量參數所指示的許可的數量大于零時,將所述第一線程池中的許可分派給所述目標任務,并調用所述第一線程池中分派給所述目標任務的許可對應的空閑線程處理所述目標任務。
5.根據權利要求1-4任一項所述的方法,其特征在于,所述獲取目標任務對應的第一線程池,包括:
接收所述目標任務,并獲取所述目標任務的目標任務類型;
從預設的線程池數據庫中獲取所述目標任務類型對應的第一線程池,其中一個任務類型對應一個線程池。
6.根據權利要求1-5任一項所述的方法,其特征在于,所述方法還包括:
當所述第一信號量參數所指示的許可的數量大于零時,將所述第一線程池中的任一許可分派給所述目標任務,并調用所述第一線程池中分派給所述目標任務的許可對應的空閑線程處理所述目標任務。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于平安普惠企業管理有限公司,未經平安普惠企業管理有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910187624.1/1.html,轉載請聲明來源鉆瓜專利網。





