后端岗位面试题更新 2026-08-05

假设有一个线程池,核心线程数为2,最大线程数为100,阻塞队列容量为100。如果一次性提交100个任务,每个任务执行时间为1秒,请问所有任务大约需要多长时间执行完?如果是200个任务呢?

高途集团后端开发教育/培训问题拆解技术原理

考察说明

考察对线程池核心线程数、最大线程数、阻塞队列容量及任务调度机制的综合理解

回答思路

  1. 正确分析前2个任务由核心线程执行,后续98个任务进入阻塞队列等待
  2. 理解核心线程数不足时任务会排队而非立即创建新线程
  3. 计算100个任务的总执行时间为50秒:2个任务执行完后再从队列中取新任务
  4. 分析200个任务时,队列满后创建额外线程,最多98个线程执行队列外任务,总时间约为100秒或略多
  5. 考虑线程创建开销和任务调度延迟的近似影响
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。