CodeGym
AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • 平台线程与虚拟线程:区别与优势

    JAVA 25 SELF
    等级 57,课时 0
    我们来梳理平台线程与虚拟线程的差异:模型“ Platform Thread → OS”如何工作以及为何沉重;在 carrier threads 之上使用虚拟线程( Virtual Thread)会带来什么变化;以及如何在不写反应式“面条代码”的情况下实现可扩展性。我们会动手实践 Thread.ofVirtual(),比较 I/O‑bound 与 CPU‑bound 任务的行为,讨论兼容性(例如 InputStream.read、 Socket.accept 等阻塞调用)以及常见错误(老式同步、期待“魔法般加速”)。
    可用
  • 创建虚拟线程:Thread.ofVirtual().start()

    JAVA 25 SELF
    等级 57,课时 1
    Java 21 虚拟线程的实战:它们与平台线程有何不同,如何通过 Thread.startVirtualThread(...) 和 Thread.ofVirtual().start(...) 启动;何时依然适合使用 new Thread(...) 或 Thread.ofPlatform();以及如何借助 Executors.newVirtualThreadPerTaskExecutor() 批量执行任务。还将讲解如何通过 join() 等待完成、用 Future 和 ExecutionException 处理错误,以及使用虚拟线程(Virtual Threads)时的常见错误。
    可用
  • Virtual Threads 的可伸缩性与性能

    JAVA 25 SELF
    等级 57,课时 2
    对平台线程 Thread 与 Java 21 虚拟线程的实战对比:JVM 如何借助“ 载体线程”(carrier threads)以极小内存执行数十万任务;虚拟线程在哪些场景大放异彩(I/O-bound),又在哪些场景不适用(CPU-bound)。解析限制( synchronized、本机阻塞),最佳实践( Executors.newVirtualThreadPerTaskExecutor()),通过 JVisualVM 和 Java Flight Recorder 进行监控,以及迁移到 Virtual Threads 时的常见错误。
    可用
  • 使用带虚拟线程的 Executor

    JAVA 25 SELF
    等级 57,课时 3
    解析如何使用 Executors.newVirtualThreadPerTaskExecutor()(Java 21)在每个虚拟线程中运行一个任务,它与经典线程池( newFixedThreadPool、 newCachedThreadPool)有何不同,如何通过 shutdown() 和 awaitTermination(...) 正确结束,如何通过 Future 获取任务结果,以及虚拟线程在哪些场景中收益最大(大量 I/O、Web 服务器、压力测试)。最后——常见错误与细节。
    可用
  • Scoped Values 与新的线程机制(Java 21+)

    JAVA 25 SELF
    等级 57,课时 4
    讲解为什么经典的 ThreadLocal 在虚拟线程时代逐渐失去优势,以及如何用 ScopedValue 来替代它:将上下文绑定到执行作用域,而不是绑定到线程。包含逐步示例来传递上下文(用户、 REQUEST_ID)、嵌套的 scope 及其遮蔽、与虚拟线程集成( Executors. newVirtualThreadPerTaskExecutor())。讨论 ThreadLocal 与 ScopedValue 的对比、实践建议、限制以及对 Structured Concurrency(预览)的展望。
    可用
Learn
  • 注册
  • Java 课程
  • 任务帮助
  • 定价
  • Java 语法
社区
  • 用户
  • 文章
  • 论坛
  • 聊天
  • 成功故事
  • 动态
  • 联盟计划
Company
  • 关于我们
  • 联系方式
  • 评价
  • 媒体中心
  • CodeGym for EDU
  • 常见问题
  • 支持
CodeGymCodeGym 是一个从零开始学习 Java 编程的在线课程。该课程是初学者掌握 Java 的完美方式。它包含 1200+ 个带即时验证的任务,以及必要的 Java 基础理论。为了帮助你在学习中取得成功,我们实现了一系列激励功能:测验、编码项目、关于高效学习的内容,以及 Java 开发者职业相关内容。
关注我们
界面语言
English Deutsch Español हिन्दी Français Português Polski বাংলা
简体中文
मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
“程序员是培养出来的,不是天生的” © 2026 CodeGym
MastercardVisa
“程序员是培养出来的,不是天生的” © 2026 CodeGym