核心线程与非核心线程的区别是什么?

1 个回答

  • 小菜鸟
    二八佳人体似酥,腰间仗剑斩凡夫。
    ## 作用 - 核心线程:线程池中长期保留的基础工作线程,用于处理日常并发任务。 - 非核心线程:当任务增多、核心线程和任务队列无法及时处理时临时创建的线程,用于应对流量峰值。 ## 原理 - 线程池会先使用核心线程执行任务。 - 核心线程都繁忙时,新任务通常先进入阻塞队列等待。 - 队列也满后,线程池才会创建非核心线程,直到达到最大线程数。 - 峰值过后,非核心线程空闲超过 keepAliveTime 会被回收;核心线程默认即使空闲也通常保留。 - 若开启 allowCoreThreadTimeOut,核心线程空闲超时后也可以被回收。 - 线程本身在执行任务时没有“核心/非核心”的本质区别,区别主要体现在创建时机、数量阈值和空闲回收策略上。
    发布于 2026-10-26 10:44 •IP属地 辽宁
    举报
    评论
    收藏