No video

Parallel Streams, CompletableFuture, and All That: Concurrency in Java 8

  Рет қаралды 71,469

Java

Java

Күн бұрын

Kenneth Kousen, President, Kousen IT, Inc.
The Java 8 (and 9) standard library includes multiple techniques for taking advantage of parallelism and concurrency, including parallel streams and the CompletableFuture class. Combined with the ExecutorService and other classes from java.util.concurrent, they give developers a wide range of choices for optimizing program speed. This session reviews the options and trade-offs involved.

Пікірлер: 23
@SoyJayP
@SoyJayP 5 жыл бұрын
This video should be watched by every serious Java developer
@Pavan_Gaekwad
@Pavan_Gaekwad 3 ай бұрын
Yes
@sixbrx
@sixbrx 6 жыл бұрын
I enjoyed this, I do a bit of parallel stream processing myself here and there but still learned a few things here. The speaker really packs a lot of good info into this talk.
@SpiritOfIndiaaa
@SpiritOfIndiaaa 4 жыл бұрын
thanks a lot , This video should be watched by every serious Java developer
@pravinjain2834
@pravinjain2834 2 жыл бұрын
This is a really good explaination of using CompletableFuture and parallel streams
@benjamine.ndugga729
@benjamine.ndugga729 5 жыл бұрын
Interesting to note that the forkJoin pool sets the number of runnables equal to the cpu cores.
@konstantingromov6485
@konstantingromov6485 Жыл бұрын
Actually number of CPU cores -1
@2hardon
@2hardon Жыл бұрын
0:45
@DanilErofeev
@DanilErofeev 5 жыл бұрын
I'm a bit confused - Kenneth said that parallelism is not worth it on simple operations like sums even on 10 millions of elements - I've tried immediately with JMH with array of one million random elements just sum() of stream and parallel was ten times faster..
@DerSpudi
@DerSpudi 5 жыл бұрын
I'm not really sure about this but I think he was talking strictly about primitives. I don't know about JMH but if the Array you're testing is for example of type Integer, the autoboxing might have a pretty significant perfomance penalty. Thus making parallelStream worth it again.
@hoangbach9763
@hoangbach9763 2 жыл бұрын
hi, when should i use Project Loom instead of Reactive
@hashcodehub6717
@hashcodehub6717 Жыл бұрын
@Java can you guys please share the ppt here :) love the video
@TawfikShalash
@TawfikShalash 11 ай бұрын
amazing video Iam watching at 2023 I hope they released better mac's😂😂😂😂 20:10
@pradeeshbm5558
@pradeeshbm5558 Жыл бұрын
Why didn't we name it 'concurrentStream' instead of 'parallelStream'?
@mihaiapostol7864
@mihaiapostol7864 11 ай бұрын
he explained in the beginning that "concurrency" is potential, meaning it's not guaranteed it will happen, while parallelism means that tasks will always run in parallel
@DeepakPandey-ij3bz
@DeepakPandey-ij3bz 6 жыл бұрын
Completablefuture is also blocking, until first task is completed second task will not start if second task depends upon first task output... Please explain
@soyphea8697
@soyphea8697 5 жыл бұрын
So it meant you are using the wrong way.
@jfilipcic
@jfilipcic Жыл бұрын
@@soyphea8697 I think Deepak means the part where he is creating a completablefuture, calling the getRemote synchronously and than completing the cf with the result. That is blocking, it is waiting for the getRemote to finish. But it is not the CF that is blocking, it is the direct call to the getRemote.
@mihaiapostol7864
@mihaiapostol7864 11 ай бұрын
he explained in the video that the advantages of using CompletableFuture over Future is that, by chaining CompletableFutures one after the other, you'll be sure they will run in the order that you declared them in the "pipeline". unlike the case of Future, where you need to check isDone() billions of time before you can proceed with other Future calls if you care about running tasks in a particular order.
@paulhendrix8599
@paulhendrix8599 4 жыл бұрын
Confidential?
@TomarSahab
@TomarSahab 3 жыл бұрын
beginners you can skip this exp 3+ u shud watch this
Kids' Guide to Fire Safety: Essential Lessons #shorts
00:34
Fabiosa Animated
Рет қаралды 11 МЛН
Кадр сыртындағы қызықтар | Келінжан
00:16
Java 21 Is Good?! | Prime Reacts
27:08
ThePrimeTime
Рет қаралды 228 М.
Concurrency Concepts in Java by Douglas Hawkins
44:22
Devoxx Poland
Рет қаралды 50 М.
Thinking In Parallel by Stuart Marks and Brian Goetz
1:00:04
The Clever Way to Count Tanks - Numberphile
16:45
Numberphile
Рет қаралды 901 М.
CompletableFuture: The Promises of Java
47:47
Oracle Developers
Рет қаралды 49 М.
Java 8 to 18: Most important changes in the Java Platform
31:24
Java Streams: Beyond The Basics
49:21
Jfokus
Рет қаралды 72 М.
Tomasz Nurkiewicz - CompletableFuture in Java 8, asynchronous processing done right
1:01:10
Java Language Futures - Spring 2024 Edition
50:47
Java
Рет қаралды 21 М.