Thinking in Streams
summary
Covers Java streams from Java 8 up to Java 25 and introduces Java 24’s new stream gutters as a real extension point that allows custom intermediate ops with mutable state. Shows built-in gutters like mapConcurrent (uses virtual threads to run 20 concurrent jobs in ~1s) and window sliding for anomaly detection, and explains why old parallel streams are limited by the common ForkJoinPool (example: 16 processors -> 17 tasks double runtime). Demonstrates custom collectors, a distinct-by-length gutter, and that the gutters approach works and improves parallelism.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 1:14How Java streams work
- 8:27Custom collectors in Java
- 15:03Stream exceptions and parallelism
- 23:45Java 24 stream gutters
- 30:12Built-in stream gutters
- 33:08Custom gutters vs classic solutions
- 38:49Learning and best practices
- 44:08Q&A and closing
related talks
46mThinking in Streams
40mStream Gathers - The biggest change to Java Streams since 10 years
47mStreams – Below the Surface
44mLevel Up Your Java Streams with Gatherers
43mStream Gatherers - Deep Dive with the Expert
39mLevel Up Your Java Streams with Gatherers
45mStream Gatherers
02h 35mParallel and Asynchronous Programming with Streams and CompletableFuture
