JEP 444:针对 Java 21 的虚拟线程
原文中文,约3700字,阅读约需9分钟。发表于: 。将虚拟线程引入Java 平台。虚拟线程是轻量级线程,可显着减少编写、维护和观察高吞吐量并发应用程序的工作量。 目标 使以简单的每个请求一个线程的方式编写的服务器应用程序能够随着接近最佳的硬件利用率进行扩展。 使使用java.lang.ThreadAPI 的现有代码能够以最小的更改采用虚拟线程。 使用现有的 JDK 工具轻松地对虚拟线程进行故障排除、调试和分析。 ...
本文介绍了如何使用虚拟线程提高服务器应用程序的可扩展性,虚拟线程是一种轻量级线程,可以显着减少编写、维护和观察高吞吐量并发应用程序的工作量。虚拟线程可以保留每个请求线程的风格,同时与平台保持和谐。虚拟线程可以在请求的整个持续时间内在虚拟线程中运行,但虚拟线程仅在它在 CPU 上执行计算时使用操作系统线程。虚拟线程既便宜又充足,因此永远不应该被池化。虚拟线程可以运行平台线程可以运行的任何代码,支持线程局部变量和线程中断。虚拟线程可以显着提高应用程序吞吐量,但需要注意内存使用和与垃圾收集的交互。