Virtual Threads and Structured Concurrency in Java 21 With Loom

  Рет қаралды 32,116

IntelliJ IDEA, a JetBrains IDE

IntelliJ IDEA, a JetBrains IDE

Күн бұрын

Пікірлер: 28
@ThabaniMoyo-q7u
@ThabaniMoyo-q7u Жыл бұрын
This guy is awesome. I like the way he easily explains difficult concepts. @Jose is s a Lengend!
@PaulusSh84
@PaulusSh84 Жыл бұрын
I am a simple Java developer, whenever I see a video with Jose, I like it. 1:14:41
@JavaWithMala
@JavaWithMala Жыл бұрын
Thanks!
@jfilipcic
@jfilipcic Жыл бұрын
he's the European Venkat :)
@TomekSamcik69
@TomekSamcik69 5 ай бұрын
Whenever I see his simple, sincere face, I immediately feel the urge to code something concurrent.
@onebeartoe
@onebeartoe Жыл бұрын
This was a great format! I wish I had watch it live.
@bearbear4893
@bearbear4893 Жыл бұрын
Nice. Thx for the video and your contribution to the community
@user-fg6ng7ej6w
@user-fg6ng7ej6w Жыл бұрын
good detailed presentation, thanks. internals, guts of the things are especially interesting
@traxex1975
@traxex1975 Жыл бұрын
Great video! 🎉 Truly professor explanation😊
@tarphuer
@tarphuer Жыл бұрын
at time 20:23, the when the lambda is running the suuplyAsync(), some thread from the pool will be blocked right? I don't think the thread that launches this lambda will be freed up to do other tasks before the lambda returns. Hence this will still not be able to launch a million requests. In other word, this is still a 1 blocking request per thread pattern
@OlehFaizulin
@OlehFaizulin Жыл бұрын
WeatherReader::getBodyFrom is blocking call, so a completable future will block. httpClient.sendAsync must be used with .thenComposeAsync (or .thenCompose) Kinda a huge mistake in async programming An it's at 18:19
@arvindmannem8751
@arvindmannem8751 Жыл бұрын
This reminds me of generator functions in Python; great explanation
@Aditya-k9d
@Aditya-k9d 4 ай бұрын
Hi @IntelliJ IDEA, a JetBrains IDE, I want to understand the following - 1. How is it ensured that all the blocking operations invoked by any arbitrary code (excluding native method calls and synchronized blocks) from a virtual thread are managed by the Continuation framework? Have all the potential blocking points in the JDK been identified and adapted to support this? 2. Consider a third-party library that is confirmed not to use native methods or synchronized blocks. While calling it from a virtual thread, is it still necessary to manually verify that it will not accidentally block the underlying platform thread? Thanks.
@ВасилЕгов
@ВасилЕгов Жыл бұрын
Awesome feature!
@bharatnanwani
@bharatnanwani Жыл бұрын
Amazing session!
@milesliu4498
@milesliu4498 Жыл бұрын
Awesome LTS version
@jfilipcic
@jfilipcic Жыл бұрын
One more question, if possible. How will virtual thread deal with happens before guarantee? Since context switching will be so much faster, will the compiler need to rearrange code, creating visibility issues?
@NathanHotchkin
@NathanHotchkin Жыл бұрын
Can anyone point me to a HttpClient library that supports virtual threads? Does spring's webclient / apache HttpComponents support them?
@shakilahmed4647
@shakilahmed4647 Жыл бұрын
@Mala you wanted to attach his GitHub link btw
@eugenetsiukhlov7127
@eugenetsiukhlov7127 2 ай бұрын
CompletableFeature in that case just transfer bloking problem from main thread to tread's pool thread. and really getting situation even worse since you have limited theads in pool and it preventing you to schedule to another thread to make something usefule you like forcing your CPU do deal with "waiting" tasks
@kanaillaurent526
@kanaillaurent526 Жыл бұрын
Révolution!!!!
@krellin
@krellin Жыл бұрын
This is in many ways inferior to coroutines in kotlin but still a huge step for java, nice job.
@encapsulatio
@encapsulatio Жыл бұрын
What are the "many ways"? List them please.
@sommyaruproy8405
@sommyaruproy8405 Жыл бұрын
No
@GafarOlanipekun
@GafarOlanipekun Жыл бұрын
It is so cringing when I hear Kotlin trying to sell it does something than Java when the entire life cycle of Kotlin is running on JVM. Kotlin is only useful for code simplicity like Lamda not in anyway performant than Java.
@krellin
@krellin Жыл бұрын
​@@encapsulatio 1. Coroutines let you clearly define what's suspending or not, not some magic blocking functions by JDK that are special. 2. Coroutines have context which allows you to carry around a lot of useful information. 3. Coroutine jobs and cancellation mechanics that cascade to other subroutines. with that said from some basic tests loom is actually faster than coroutines
@krellin
@krellin Жыл бұрын
@@GafarOlanipekun Kotlin does not just run on JVM... and why that even matters, kotlin is simply a better language that forced java team to actually care about their language. They keep releasing features that we had like 10 years ago, with a lag. What stopped them from doing these things before? if they did there would be no need for kotlin
The New HTTP Client CLI. By @MarcoCodes
1:06:14
IntelliJ IDEA, a JetBrains IDE
Рет қаралды 29 М.
The JUnit Crew Presents What's New
1:12:00
IntelliJ IDEA, a JetBrains IDE
Рет қаралды 3,8 М.
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН
Что-что Мурсдей говорит? 💭 #симбочка #симба #мурсдей
00:19
Леон киллер и Оля Полякова 😹
00:42
Канал Смеха
Рет қаралды 4,7 МЛН
Google’s Quantum Chip: Did We Just Tap Into Parallel Universes?
9:34
Turkish FM on post-Assad Syria: Strategy vs reality | Talk to Al Jazeera
27:41
CQRS meets modern Java
49:57
Peru JUG
Рет қаралды 200
Build GraphQL Services with Spring Boot like Netflix
1:27:47
IntelliJ IDEA, a JetBrains IDE
Рет қаралды 6 М.
From Code to Clarity With the Redesigned Structure Tool Window
58:26
IntelliJ IDEA, a JetBrains IDE
Рет қаралды 2,7 М.
GraalVM and GraalPy Meet IntelliJ IDEA
1:09:40
IntelliJ IDEA, a JetBrains IDE
Рет қаралды 1,3 М.
DIDAS Technology - vLEI
1:06:15
DIDAS
Рет қаралды 49
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН