Loom虚拟线程指南
-
Hibernate Reactive 简介
17 6K反应式编程是一种强调异步数据流和非阻塞操作原则的编程范式。其主要目标是构建能够处理多个并发事件并实时处理的应用程序。传统上,在命令式编程中,我们按顺序执行代码,一次一条指令。然而,在响应式编程中,我们.
-
Light-4J 简介
217 5KLight-4J 是一个尖端的 Java 框架,它通过结合敏捷性和性能彻底改变了开发。它采用现代开发范例,符合微服务原则并满足当今动态软件架构的需求。在本教程中,我们将深入探讨其核心理念、关键功能和架.
-
Java中CompletableFuture与虚拟线程比较
102 6K异步编程是现代 Java 应用程序的基石,允许它们在不阻塞主线程的情况下处理任务。但Java 21带来了新的挑战者:虚拟线程。这些传统操作系统线程的轻量级替代方案有望显着提高性能。然而,熟悉的 Com.
-
Java 21中使用虚拟线程的简单Http Server
136 2K在具有虚拟线程的 Java 21 上运行的 JDK HTTP Server 和基准测试,项目点击标题一个简单的 HTTP 服务器非常有用!对于大多数项目,使用现成的标准库 JDK HTTP 服务器。此.
-
使用 Jetty 12 演示 Ktor 中的虚拟线程支持
83这是使用虚拟线程在 Jetty 12 上运行 Ktor 的演示背景:我花了足够长的时间研究反应式数据库驱动程序等,并受到这个问题 的启发,我决定构建一个 POC,使用 Jetty 12 演示 Ktor.
-
Java中Quarkus使用虚拟线程
106 1 4KJava 21 的引入带来了一项革命性的功能——虚拟线程。这些由Java 虚拟机(JVM)管理的轻量级线程有望重塑开发人员在 Java 应用程序中处理并发性的方式。并发应用程序开发长期以来一直充满挑战.
-
十亿行挑战
409 2K让我们开启 2024 年真正的编码风格 —我很高兴宣布10 亿行挑战赛(1BRC),将于 1 月 1 日持续到 1 月 31 日。如果您决定接受的话,您的任务看似简单:编写一个 Java 程序,用于.
-
Java中输入输出的五种方式
80 22K本文介绍Java中输入输出的五种方式:读取方式:BufferedInputStreamByteArrayInputStream BufferedReader写入方式:BufferedWriterBuf.
-
Java 21 中的虚拟线程
141 3K在不断发展的编程语言和技术领域,Java 始终是构建健壮且可扩展的应用程序的基石。在每次迭代中,Java 都会引入新功能来应对现代开发挑战。Java 21为表带来了一个突破性的特性——虚拟线程。虚拟线.
-
jox:Java 中的快速且可扩展的通道
121 4KJava 中的快速且可扩展的通道。设计用于与Project Loom一起使用。受到“Kotlin 协程中的快速且可扩展的通道”论文和Kotlin 实现的启发。jox库在 Java 中实现了一种高效的C.
-
在虚拟线程中处理 Kafka 记录
113 4KQuarkus 中的虚拟线程支持不仅限于 REST 和 HTTP。 许多其他部分支持虚拟线程,例如 gRPC、计划任务和消息传递。 在这篇文章中,我们将了解如何在虚拟线程上处理 Kafka 记录,从而.
-
虚拟线程的死锁代码
134 2K这个问题很有趣:这个程序使用 #Java平台线程完成,但使用虚拟线程时却死锁。原因是虚拟线程被钉在同步块中(即不释放其载体),因此没有载体可用。import java.util.concurrent..
-
Spring Boot中的虚拟线程
222 11K本文讨论 Spring Boot 中的虚拟线程。虚拟线程作为 Java 中的一项功能引入,旨在简化并发性。Virtual threads是由操作系统而不是操作系统lightweight 管理的。Jav.
-
Loom是Java中的超线程?
123Loom 中的虚拟线程就是 JVM 上超线程(HyperThreading)的一个版本吗?虚拟线程与超线程不同两者之间存在差异,最显着的是:超线程不需要像 Loom 那样进行任务协作,因此虚拟核心不能. -
Spring Boot 3.2.0 现已推出
476 1Spring Boot 3.2.0 已经发布,并且可以从 Maven Central 获取。此版本添加了大量新功能和改进。有关完整的升级说明以及值得注意的新功能,请参阅发行说明。3.2 版本的亮点包.
-
Spring Framework 6.1 正式发布
252 1Spring Framework 6.1.0 现已从 Maven Central 正式发布!6.1 一代有几个关键主题: 拥抱 JDK 21 LTS 虚拟线程(Project Loom) JVM 检.
-
综合指南:如何确定 Java 线程池大小
177 1 10KJava 中的线程创建会产生显着的成本。创建线程会消耗时间,增加请求处理的延迟,并且涉及 JVM 和操作系统的大量工作。为了减轻这些开销,线程池发挥了作用。在本文中,我们将深入研究确定理想线程池大小的.
-
Helidon 4用Java虚拟线程重写
286本文阐述了“支持虚拟线程”和“基于虚拟线程”的主要区别!在 Loom 项目宣布并发布后,许多微服务框架声明支持虚拟线程。Helidon 4 实际上是基于虚拟线程,而不是仅仅支持虚拟线程: “基于”是将.
-
基于虚拟线程的结构化并发
239 11K在本文中,我们将讨论并发系统的一些新模式,这些模式是由 Java 21 中的新虚拟线程、结构化并发 (JEP 453 )和范围值(JEP 446: Scoped Values)组成的新的结构化并发模式.
-
Spring Boot 3.2四个新特点提升运行性能
699 1 5K随着 Spring Framework 6.1 和 Spring Boot 3.2 普遍可用性的临近,我们想分享一下 Spring 团队为让开发人员优化其应用程序的运行时效率而做出的几项努力的概述。我.
-
Java中semaphore信号量使用场景
184 3K在Java的并发API中,信号量是另一种同步工具,它同时控制访问特定资源或代码段的线程数量。它管理一组许可证; 线程在继续之前必须获得许可。 如果许可可用,则线程获取它并继续执行。 如果没有,则线程将.
-
Java中CountDownLatch使用场景
226 3K在Java的并发API中,CountDownLatch是一个同步器,它允许一个或多个线程等待一组操作完成。如果您正在开发一个服务器应用程序,该应用程序在开始处理请求之前需要初始化各种资源。这些资源可能.
-
可生产使用Java 21/JDK 21 GA版本发布
187来自 Oracle 的 GPL 许可的 OpenJDK 版本可在此处获得:https://jdk.java.net/21来自其他供应商的版本无疑很快就会推出。本版本包含 15 个 JEP: 430.
-
面试题:进程和线程有什么区别?
166热门面试问题:流程和线程有什么区别?为了更好地理解这个问题,我们先来看看什么是程序。程序是包含一组指令的可执行文件,被动地存储在磁盘上。一个程序可以有多个进程。例如,Chrome 浏览器会为每个标签页.
-
Quarkus中虚拟线程
450 3K第一步、使用@RunOnVirtualThread注释实现虚拟线程。@RunOnVirtualThread 注解指示 Quarkus 在一个新的虚拟线程而不是当前线程上调用注解的方法。Quarkus .
-
Hermes : Java中超快速通信新方法
506 4K为 Java应用程序提供超快速网络的新方法,Hermes 项目是一个基于 OpenJDK JEP 424 的与网络无关的 Java 超快速通信解决方案。Hermes 项目将为基于 OpenJDK JE.
-
C++ 协程的缺点
435 14K这篇博文旨在强调将代码库转向协程(例程)所带来的一些风险,我相信持续不良的协程使用可能会导致更不安全和更慢的程序。即使没有多线程,协程也应该像编写多线程代码一样受到怀疑,它仍然是异步的。普通函数和堆栈.
-
Java虚拟线程会杀死响应式编程?
776投入时间和精力学习领先的反应式框架(如 Webflux、RxJava 等)是否是个好主意?鉴于虚拟线程(Project Loom)在几次迭代后将在 JVM 中成为 GA。甚至 Spring 也引入了虚.
-
JDK21预览功能简介
590 2随着9月份#JDK21 的发布越来越近,让我们开始全面了解这个版本为Java生态系统带来的突破性功能和改进。JEP 444 引入了虚拟线程,是高吞吐量并发应用程序的游戏规则改变者。它们轻量且高效,可以.
-
Java虚拟线程不能使用同步synchronized锁!
924 1 4KProject Loom将虚拟线程的概念引入了 Java 运行时,并将在 9 月份作为JDK 21中的稳定功能提供。Loom 项目旨在将异步编程的性能优势与直接“同步”编程风格的简单性结合起来。为了实.