Java Concurrency and Debugging with IntelliJ IDEA


Details
This meetup will be hosted by [Move.nl](https://move.nl/), in their office, Jacob Bontiusplaats 9 1018 LL Amsterdam. (Note that it is a little bit hard to find, once you're in the INIT building, go up the first escalator and turn left and you'll see a Move.nl banner.)
Agenda
17:30 Doors open, drinks, and welcome to Move.nl!
18:00 Hanno Embregts presenting "Java’s Concurrency Journey Continues! Exploring Structured Concurrency and Scoped Values"
18:45 Food, with thanks to Move.nl for hosting and sponsoring us!
19:15 Anton Arhipov presenting "Debugging with IntelliJ IDEA"
20.00 Closing drinks
20:30 End
Information about the talks:
Title: Java’s Concurrency Journey Continues! Exploring Structured Concurrency and Scoped Values
Java’s concurrency journey has been a long and winding one. We departed from the ‘classic threads’ station and traveled through Runnables, ExecutorServices, CompletableFutures, and ForkJoinPools, before finally arriving at ‘virtual threads’. But does ‘finally’ mean that we’ve arrived at our final destination, or is it a transfer at best?
Now that virtual threads are available, our Java programs will likely use an abundance of threads. This increase in thread count will immediately make thread coordination, observability and isolation more difficult. Two new Java features are currently in development that might make things a bit easier: Structured Concurrency and Scoped Values.
In this talk, we’ll introduce and demonstrate these new features, and how they can help address the challenges that have emerged since the introduction of virtual threads. We’ll also discuss how the availability of these features will impact your day-to-day programming life and whether Java’s concurrency journey is actually over now that these features have become available or if there are still more stops to come.
About Hanno: Hanno Embregts is a Java Developer with a passion for learning, teaching and making music. In his day-to-day job as an IT Consultant at Info Support and is both a Java Champion and an Oracle ACE Associate. He is also one of the editors of the Dutch Java Magazine. Software conferences and meetups are Hanno’s favorite thing in the world. More details on Hanno here!
Title: Debugging with IntelliJ IDEA
Historically, debuggers are used to help locate and fix bugs. Nowadays, the debugger in IntelliJ IDEA can help you do much more than that.
Let's see how the debugger helps make the development process more productive. I demo various features for debugging Java applications, including not-so-standard ones, like:
- Lambda breakpoints
- Stream chain tracing
- Dropping the frame
- Emulated method breakpoint
- Evaluate and log
- Non-suspending breakpoints
- Custom data renderers and more
100% live coding session
About Anton: Anton Arhipov is a Developer Advocate in the Kotlin team at JetBrains. With a professional background in server-side development, Anton has been building tools for developers for more than ten years. Recognized as a Java Champion since 2014, he often presents as a speaker at large software conferences and contributes to the Kotlin YouTube channel.

Java Concurrency and Debugging with IntelliJ IDEA