欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實(shí)現(xiàn)threadLocal線程池獲取

 更新時(shí)間:2023年07月28日 09:57:22   作者:清晨細(xì)雨~  
本文主要介紹了Java實(shí)現(xiàn)threadLocal線程池獲取,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

問題:

ThreadLocal默認(rèn)不支持子線程獲取,而InheritableThreadLocal支持子線程獲取threadLocal值,但是如果使用線程池,核心個(gè)數(shù)為1則子線程會(huì)獲取到上一個(gè)threadLocal的值。

解決:

1.引入transmittable-thread-local jar

<dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>transmittable-thread-local</artifactId>
   <version>2.11.4</version>
</dependency>

2. threadLocal 初始化

private static final TransmittableThreadLocal<User> CURRENT_USER_HOLDER = new TransmittableThreadLocal();

3. Executor bean,使用TtlExecutor

@Bean(value = "defaultThreadPool")
    public Executor buildQueueThreadPool() {
        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
        int cpuNum = Runtime.getRuntime().availableProcessors();
        // 設(shè)置核心線程數(shù)
        executor.setCorePoolSize(Math.min(cpuNum * 2, 16));
        // 設(shè)置最大線程數(shù)
        executor.setMaxPoolSize(cpuNum * 2);
        //隊(duì)列中最大的數(shù)目
        executor.setQueueCapacity(300);
        //線程名稱前綴
        executor.setThreadNamePrefix("defaultThreadPool_");
        //rejection-policy:當(dāng)pool已經(jīng)達(dá)到max size的時(shí)候,如何處理新任務(wù)
        //CALLER_RUNS:不在新線程中執(zhí)行任務(wù),而是由調(diào)用者所在的線程來執(zhí)行
        //對(duì)拒絕task的處理策略
        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
        //線程空閑后的最大存活時(shí)間
        executor.setKeepAliveSeconds(60);
        //加載
        executor.initialize();
        return TtlExecutors.getTtlExecutor(executor);
    }

到此這篇關(guān)于Java實(shí)現(xiàn)threadLocal線程池獲取的文章就介紹到這了,更多相關(guān)Java threadLocal線程池內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringCloud使用FFmpeg對(duì)視頻壓縮處理的代碼示例

    SpringCloud使用FFmpeg對(duì)視頻壓縮處理的代碼示例

    在現(xiàn)代的視頻處理系統(tǒng)中,壓縮視頻以減小存儲(chǔ)空間、加快傳輸速度是一項(xiàng)非常重要的任務(wù),FFmpeg作為一個(gè)強(qiáng)大的開源工具,廣泛應(yīng)用于音視頻的處理,包括視頻的壓縮和格式轉(zhuǎn)換等,本文將通過Java代碼示例,向您展示如何使用FFmpeg進(jìn)行視頻壓縮,并介紹相關(guān)參數(shù)的設(shè)置
    2024-11-11
  • Spring MVC 學(xué)習(xí) 之 - URL參數(shù)傳遞詳解

    Spring MVC 學(xué)習(xí) 之 - URL參數(shù)傳遞詳解

    本篇文章主要介紹了SpringMVC-URL參數(shù)傳遞,在學(xué)習(xí) Spring Mvc 過程中,有必要來先了解幾個(gè)關(guān)鍵參數(shù),有興趣的可以了解一下。
    2017-01-01
  • JAVA后端應(yīng)該學(xué)什么技術(shù)

    JAVA后端應(yīng)該學(xué)什么技術(shù)

    這篇文章主要介紹了JAVA后端應(yīng)該學(xué)什么技術(shù),對(duì)JAVA感興趣的同學(xué),可以規(guī)劃一下
    2021-04-04
  • SpringBoot靜態(tài)資源與首頁(yè)配置實(shí)現(xiàn)原理深入分析

    SpringBoot靜態(tài)資源與首頁(yè)配置實(shí)現(xiàn)原理深入分析

    最近在做SpringBoot項(xiàng)目的時(shí)候遇到了“白頁(yè)”問題,通過查資料對(duì)SpringBoot訪問靜態(tài)資源做了總結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-10-10
  • SpringMVC 重新定向redirect請(qǐng)求中攜帶數(shù)據(jù)方式

    SpringMVC 重新定向redirect請(qǐng)求中攜帶數(shù)據(jù)方式

    這篇文章主要介紹了SpringMVC 重新定向redirect請(qǐng)求中攜帶數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java負(fù)載均衡策略的實(shí)現(xiàn)詳解

    Java負(fù)載均衡策略的實(shí)現(xiàn)詳解

    這篇文章主要介紹了Java負(fù)載均衡策略的實(shí)現(xiàn),負(fù)載均衡在Java領(lǐng)域中有著廣泛深入的應(yīng)用,不管是大名鼎鼎的nginx,還是微服務(wù)治理組件如dubbo,feign等,負(fù)載均衡的算法在其中都有著實(shí)際的使用,需要的朋友可以參考下
    2022-07-07
  • 基于java實(shí)現(xiàn)簡(jiǎn)單發(fā)紅包功能

    基于java實(shí)現(xiàn)簡(jiǎn)單發(fā)紅包功能

    這篇文章主要為大家詳細(xì)介紹了基于java實(shí)現(xiàn)簡(jiǎn)單發(fā)紅包功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 基于Spring框架由ConditionalOnMissingBean注解引發(fā)的問題

    基于Spring框架由ConditionalOnMissingBean注解引發(fā)的問題

    這篇文章主要介紹了基于Spring框架由ConditionalOnMissingBean注解引發(fā)的問題,具有很好
    2023-11-11
  • Java Kafka分區(qū)發(fā)送及消費(fèi)實(shí)戰(zhàn)

    Java Kafka分區(qū)發(fā)送及消費(fèi)實(shí)戰(zhàn)

    本文主要介紹了Kafka分區(qū)發(fā)送及消費(fèi)實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Java簡(jiǎn)單計(jì)算圓周率完整示例

    Java簡(jiǎn)單計(jì)算圓周率完整示例

    這篇文章主要介紹了Java簡(jiǎn)單計(jì)算圓周率,結(jié)合完整實(shí)例形式分析了Java計(jì)算圓周率的原理與操作技巧,代碼備有較為詳盡的注釋便于理解,需要的朋友可以參考下
    2018-05-05

最新評(píng)論