国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - Java教程 - Spring Boot 配置和使用多線程池的實現

Spring Boot 配置和使用多線程池的實現

2021-05-08 10:38阿懶土靈 Java教程

這篇文章主要介紹了Spring Boot 配置和使用多線程池的實現,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

某些情況下,我們需要在項目中對多種任務分配不同的線程池進行執(zhí)行。從而通過監(jiān)控不同的線程池來控制不同的任務。為了達到這個目的,需要在項目中配置多線程池。

spring boot 提供了簡單高效的線程池配置和使用方案。

配置

首先是配置線程池的bean交給spring 管理:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
@configuration
 
public class taskexecutepool {
 
 @bean(name ="threadpoola")
 
public threadpooltaskexecutormytaskasyncpool() {
 
threadpooltaskexecutor executor =new threadpooltaskexecutor();
  executor.setcorepoolsize(4);
 
  executor.setmaxpoolsize(8);
 
  executor.setqueuecapacity(100);
 
  executor.setkeepaliveseconds(60);
 
  executor.setthreadnameprefix("pool-a");
 
  executor.setrejectedexecutionhandler(new threadpoolexecutor.callerrunspolicy());
 
  executor.initialize();
 
  return executor;
 
 }
 
@bean(name ="threadpoolb")
 
public threadpooltaskexecutorasyncpoolb() {
 
threadpooltaskexecutor executor =new threadpooltaskexecutor();
 
  executor.setcorepoolsize(2);
 
  executor.setmaxpoolsize(4);
 
  executor.setqueuecapacity(8);
 
  executor.setkeepaliveseconds(60);
 
  executor.setthreadnameprefix("pool-b");
  //當任務數量超過maxpoolsize和queuecapacity時使用的策略,該策略是又調用任務的線程執(zhí)行
  executor.setrejectedexecutionhandler(new threadpoolexecutor.callerrunspolicy());
 
  executor.initialize();
 
  return executor;
 
 }
 
}

使用

使用線程只需要在執(zhí)行方法上加上注釋,同時該方法的類必須被定義為bean,交由spring管理。

可以在類上使用注解@component、@service等

?
1
2
3
4
@async(value="threadpoola")
public void taska(){
 ...
}

查看線程活躍數:

?
1
2
3
4
5
6
@autowired
 private threadpooltaskexecutor threadpoola;//變量名稱為定義的線程池bean定義的name屬性名。
 
public void checkavtivethreadnum() {
  int num = threadpoola.getactivecount();
}

當然還有其他一些方法,這里不再舉例。

線程池各屬性理解:

corepoolsize:表示線程池核心線程,正常情況下開啟的線程數量。

queuecapacity:當核心線程都在跑任務,還有多余的任務會存到此處。

maxpoolsize:如果queuecapacity存滿了,還有任務就會啟動更多的線程,直到線程數達到maxpoolsize。如果還有任務,則根據拒絕策略進行處理。

拒絕策略有多種:

  • 由任務調用線程執(zhí)行
  • 拋異常
  • 多余的直接拋棄
  • 根據fifo(先進先出)拋棄隊列里任務

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.jianshu.com/p/0170d71dc502

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 三级成人在线 | 中文字幕日韩欧美 | 日韩精品dvd| 国产1区| 亚洲视频在线观看视频 | 日本高清不卡视频 | 中文字幕精品一区 | 91中文字幕在线 | 可以看av的网站 | av一区二区不卡 | 亚洲乱码国产乱码精品精的特点 | 欧美久久精品 | 免费黄网站在线观看 | 久久99精品久久久久久噜噜 | 天天综合视频网 | 国产中文字幕在线 | 日韩中文字幕一区二区三区 | 黄色av网站免费看 | 一级在线观看视频 | 国内自拍视频在线观看 | 91精品久久久久久 | 亚洲国产精品福利 | 精品一区二区久久 | 午夜在线 | 一区二区福利 | 久久亚洲精品国产精品紫薇 | 四虎永久免费 | 国产在线观看一区 | 久久中文字幕在线 | 免费国产网站 | 亚洲综合视频 | √天堂8在线网 | 欧美日韩精品一区二区在线播放 | 久久美女 | 久草成人网 | 精品久久久久一区二区国产 | www.一区 | 亚洲精品一二三区 | 免费看一级电影 | 天天综合7799精品影视 | 色图综合 |