[發明專利]一種線程池管理方法及裝置在審
| 申請號: | 201610154360.6 | 申請日: | 2016-03-17 |
| 公開(公告)號: | CN105760234A | 公開(公告)日: | 2016-07-13 |
| 發明(設計)人: | 張文凌;范相池 | 申請(專利權)人: | 聯動優勢科技有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 北京同達信恒知識產權代理有限公司 11291 | 代理人: | 黃志華 |
| 地址: | 100088 北京市海淀*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 線程 管理 方法 裝置 | ||
技術領域
本發明涉及計算機處理領域,尤其涉及一種線程池管理方法及裝置。
背景技術
服務器被設計成響應于來自客戶機的請求來提供服務,服務器能夠并發地處理若干請求的常見方法是使用包括用于執行任務所創建的一些線程的線程池。線程池中的線程數量是有限的資源,并且通常存在比線程多得多的任務。
在互聯網技術中線程池得到了廣泛的應用,通過引入線程池可以有效的管理線程、控制線程上限總數、以及減少創建和銷毀線程所帶來的開銷。在實際應用中,隨著業務的逐步龐大,一個系統對其他越來越多的系統調用增加,在系統中采用統一的線程池實例,可以統一有效的管理線程、減少創建和銷毀線程的開銷。
線程池技術通過讓多個不同類型的任務重用線程池的線程,使線程創建的開銷被分攤到多個不同類型的任務上。其好處是,因為在客戶請求到達時線程已經存在,所以消除了線程創建所帶來的延遲,使應用程序響應更快。
但目前多個任務被添加到一個任務隊列中,線程池管理維護一組工作線程,該組工作線程循環執行這個任務隊列中的任務。采用這種線程池管理技術,一旦任務隊列中的任務執行過程中出現異常,如線程執行該任務隊列中的某一類任務的時間過長或線程掛死,會造成其它任務無法及時處理,將影響服務器執行任務的效率。
發明內容
本發明實施例提供一種線程池管理方法及裝置,用以解決現有的線程池沒有合理地為任務隊列中的任務分配線程,導致任務執行效率低的問題。
本發明方法包括一種線程池管理方法,該方法包括:接收不同應用程序發送的任務;將所述不同應用程序發送的任務劃分為不同的任務集合,其中,每個任務集合中的任務類型相同;根據各任務集合中的任務的屬性,確定線程池中用于執行各任務集合的工作線程。
基于同樣的發明構思,本發明實施例進一步地提供一種線程池管理裝置,該裝置包括:接收單元,用于接收不同應用程序發送的任務;劃分單元,將所述不同應用程序發送的任務劃分為不同的任務集合,其中,每個任務集合中的任務類型相同;確定單元,用于根據各任務集合中的任務的屬性,確定線程池中用于執行各任務集合的工作線程。
本發明實施例通過接收不同應用程序發送的任務,然后將任務根據類型分成不同的任務集合,啟動線程池之后,按照預設規則確定線程池中用于執行任務集合的工作線程。這樣,不同類型的任務就可以被分批存放在不同的任務集合中,因為任務集合有對應分配的工作線程,所以多個任務集合可以并行執行,進而解決因某個任務處理時間過長或者掛死,造成其它任務滯后執行的問題,因此提高的執行任務的效率。
附圖說明
為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域的普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明實施例提供一種線程池管理方法流程示意圖;
圖2為~圖5本發明實施例提供一種線程池中的線程分配策略示意圖;
圖6為本發明實施例提供一種線程池管理裝置結構示意圖。
具體實施方式
為了使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明作進一步地詳細描述,顯然,所描述的實施例僅僅是本發明一部份實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其它實施例,都屬于本發明保護的范圍。
本發明以下實施例中包含有如下概念,其具體含義如下:
工作線程(ProcessThread):線程池中的線程對象,用來執行用戶任務,其個數由線程池對象中的poolSize(線程池大小)變量決定;
任務集合(taskList):用于存放待處理的任務,提供一種緩存機制;
線程池管理器(ThreadPoolManager):用來創建、查詢線程池,即維護應用程序中的所有線程池;
參見圖1所示,本發明實施例提供一種線程池管理方法流程示意圖,具體地實現方法包括:
步驟S101,接收不同應用程序發送的任務。
步驟S102,將所述不同應用程序發送的任務劃分為不同的任務集合,其中,每個任務集合中的任務類型相同。
步驟S103,根據各任務集合中的任務的屬性,確定線程池中用于執行各任務集合的工作線程。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于聯動優勢科技有限公司,未經聯動優勢科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610154360.6/2.html,轉載請聲明來源鉆瓜專利網。





