<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Project Loom on JAVAPRO International</title><link>https://javapro-en.svenruppert.com/tags/project-loom/</link><description>Recent content in Project Loom on JAVAPRO International</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Thu, 05 Mar 2026 07:00:01 +0000</lastBuildDate><atom:link href="https://javapro-en.svenruppert.com/tags/project-loom/index.xml" rel="self" type="application/rss+xml"/><item><title>Java 25 and the New Age of Performance: Virtual Threads and Beyond</title><link>https://javapro-en.svenruppert.com/java-25-and-the-new-age-of-performance-virtual-threads-and-beyond/</link><pubDate>Thu, 05 Mar 2026 07:00:01 +0000</pubDate><guid>https://javapro-en.svenruppert.com/java-25-and-the-new-age-of-performance-virtual-threads-and-beyond/</guid><description>&lt;h2 id="summary"&gt;Summary&lt;/h2&gt;
&lt;p&gt;Project Loom continues to reshape how we handle concurrency in the JVM, and Java 25 makes virtual threads more accessible to developers than ever. In this article, we’ll take a closer look at how virtual threads work, how they differ from platform threads, and where they provide the most benefit in real-world applications. We’ll also include performance benchmarks and a step-by-step guide for refactoring blocking I/O services to use virtual threads.&lt;/p&gt;</description></item><item><title>Structured concurrency</title><link>https://javapro-en.svenruppert.com/structured-concurrency/</link><pubDate>Fri, 18 Apr 2025 07:00:03 +0000</pubDate><guid>https://javapro-en.svenruppert.com/structured-concurrency/</guid><description>&lt;p&gt;Structured Concurrency was the second delivery that came out of Project Loom. It was first introduced in Java 19 as a preview API. It aimed to simplify multithreaded programming by treating multiple tasks running in different threads as a single unit of work, thereby streamlining makes the code more readable, streamlining error handling, improving reliability, and enhancing observerability.&lt;/p&gt;
&lt;p&gt;In this article, we will look at:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Look at what structured concurrency is.&lt;/li&gt;
&lt;li&gt;Look at an example using structured concurrency.&lt;/li&gt;
&lt;li&gt;Dive into the underlying API with StructuredTaskScope.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="what-is-structured-concurrency"&gt;&lt;strong&gt;What is Structured Concurrency&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Structured concurrency allows developers to reason about concurrent code by defining precise points where execution splits into multiple tasks and where those tasks subsequently merge. It brings the same level of organization to concurrency that &lt;code&gt;for&lt;/code&gt; loops and &lt;code&gt;if&lt;/code&gt; branches bring to structured programming. It achieves this by restricting the lifespan of concurrent operations to specific scopes. Similar to how variables within a &lt;code&gt;if&lt;/code&gt; statement in structured programming are bound to that block, concurrent operations within a structured scope are terminated upon exiting that scope. This ensures that threads do not linger, preventing memory leaks and wasted CPU resources.&lt;/p&gt;</description></item><item><title>Hitchhiker's Guide to Java Performance</title><link>https://javapro-en.svenruppert.com/hitchhikers-guide-to-java-performance/</link><pubDate>Mon, 07 Apr 2025 11:43:20 +0000</pubDate><guid>https://javapro-en.svenruppert.com/hitchhikers-guide-to-java-performance/</guid><description>&lt;h2 id="the-past-the-present-and-the-future"&gt;The Past, The Present and The Future&lt;/h2&gt;
&lt;p&gt;Over the last 30 years, Java has evolved from an exotic “write once, run anywhere” language to one of the dominant platforms for software development worldwide. In the early years, Java was justifiably considered slow compared to languages such as C/C++, which was mainly due to the initial interpreter approach. However, the last three decades have shown that the VM concept with HotSpot’s adaptive optimization is clearly the superior approach.&lt;br&gt;
&lt;strong&gt;by Ingo Düppe&lt;/strong&gt;&lt;/p&gt;</description></item></channel></rss>