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

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • 并行性入门

    JAVA 25 SELF
    等级 54,课时 0
    本讲我们解析多线程与并行性的区别:何时重在响应性,何时在多核上获得真实加速。我们将讨论通过 Thread 创建线程、实现 Runnable 以及高级的线程池 ExecutorService,看看一个数组求和的简单示例,分析并行性何时有益、何时有害,以及常见问题:数据竞争、通过 synchronized 进行同步、死锁与负载均衡。最后——对比表和场景可视化。
    可用
  • ExecutorService、Callable、Future:启动任务

    JAVA 25 SELF
    等级 54,课时 1
    更专业地实践多线程:将任务提交给 ExecutorService,而不是手动创建 Thread;并管理线程池、队列和生命周期( shutdown()、 shutdownNow())。讲解 Runnable 与 Callable<T> 的区别,通过 Future 及其方法( get()、 isDone()、 cancel(...)、 isCancelled())获取结果。演示启动多个任务、 invokeAll/ invokeAny、处理 ExecutionException 以及常见错误。
    可用
  • 并行流:语法与应用

    JAVA 25 SELF
    等级 54,课时 2
    弄清如何用一行代码将普通数据流切换为并行处理——通过 parallelStream() 或 .parallel(),了解 ForkJoinPool.commonPool() 底层在做什么,何时并行确实能加速(大集合、计算开销大的操作),以及何时会变慢。我们将展示过滤、聚合、排序、性能测量的示例,并剖析常见错误: forEach 中的副作用、保持顺序、集合选择以及并行度配置。
    可用
  • ForkJoinPool 与 RecursiveTask:递归任务

    JAVA 25 SELF
    等级 54,课时 3
    Java 并行计算实用指南:任务池 ForkJoinPool 与递归任务 RecursiveTask<T>/ RecursiveAction 的工作原理,work-stealing 算法的优势,如何通过 fork() 拆分任务并在 compute() 内使用 join() 合并结果。我们将解析通过 pool.invoke() 启动、数组求和与查找最大值的示例、 ForkJoinPool 在 parallelStream() 中的位置,以及常见错误与规避方法。
    可用
  • 并行编程最佳实践

    JAVA 25 SELF
    等级 54,课时 4
    Java 并行编程实用指南:什么时候该使用 ExecutorService,哪里 parallelStream 更合适,以及哪些任务需要 ForkJoinPool。我们将讨论如何使用 ConcurrentHashMap/ CopyOnWriteArrayList 和原子类( AtomicInteger)来确保线程安全,如何通过 System.nanoTime() 和 JMH 进行性能测量,如何处理来自 Future.get() 和 ForkJoinTask 的错误,如何正确响应 InterruptedException,以及日志记录( Thread.currentThread().getName())与测试( Awaitility)的技巧。最后——工具选择表与常见错误汇总。
    可用
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