You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JDK 21虚拟线程能否并发执行任务?同一平台线程内的虚拟线程可同时执行吗?

同一平台线程内的两个虚拟线程能否同时执行任务?

答案:不能

虚拟线程是java.lang.Thread的实例,由Java运行时负责调度,而非直接绑定特定OS平台线程。关于同一平台线程上的虚拟线程执行逻辑:

  • 同一平台线程在任意时刻只能执行一个虚拟线程的任务,虚拟线程会独占该平台线程的CPU执行资源。
  • 只有当当前运行的虚拟线程遇到阻塞I/O操作(或主动让出CPU)时,Java运行时才会将其暂停,并让该平台线程切换执行其他等待的虚拟线程。这种切换是上下文切换,属于串行调度,而非并行执行。
  • 平台线程作为虚拟线程的执行载体,同一时间只能承载一个虚拟线程的任务,不存在同一平台线程内两个虚拟线程同时运行的情况。

内容的提问来源于stack exchange,提问作者powercheng

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 14:44:57