Just amazing, I have watched so many talks by this guy and I have completed each video no matter how long. This man can make me watch programming content and learn something new for hours without any regrets.
Yes because he really knows the semantics .. most ppl just say a few words and start coding something incomprehensible. This man takes advanced topics and breaks them down simply
Wow, deserves far more watches. I am particularly grateful how Venkat deciphers the semantics for us behind the disjointed and unfortunate naming of functions in Java.
2:07:40 One thing I don't understand who executes the blocking calls? When I make Thread.sleep() on virtual threads, there must be someone who will remount it back. But which thread do this??
Imagine you have a single thread that receives a lot of jobs. This job can come with a future time, so that it won't start until X amount of time has passed. And now, that sleep will only need to schedule a task, insteaf of actually sleeping. what it does is that it schedules a "resume" task 1 second from now. Each thread has a list of tasks that it monitors or executes so there's no need for a parent supervisor to notify you to remount
Since sleeping is a blocking operation, the Thread Scheduler does not want the other threads to die of starvation. So the Thread Scheduler allows another Thread to get some CPU time while the current thread sleeps. Now in the context of virtual threads, the sleeping thread will be unmounted from the platform thread (or carrier thread) so that another virtual thread can mount to that platform thread and do work until that sleeping thread wakes up. The sleeping thread is placed in Heap memory while it sleeps. When the sleeping thread wakes up, it will be picked up by another carrier thread to continue its execution.
I’m really tired of all these addicted people starting a talk about their addiction, coffee is a drug, how about finding some other examples while you go to a rehab?
You don't need a PowerPoint when you have vim skills that impressive
Just amazing, I have watched so many talks by this guy and I have completed each video no matter how long. This man can make me watch programming content and learn something new for hours without any regrets.
Yes because he really knows the semantics .. most ppl just say a few words and start coding something incomprehensible. This man takes advanced topics and breaks them down simply
King Venkat flexing his vi skills
Wow, deserves far more watches. I am particularly grateful how Venkat deciphers the semantics for us behind the disjointed and unfortunate naming of functions in Java.
It was the most amazing talk I have ever seen in my life.
Impressive VIM skills
this is gold. Thanks VENKAT.
This presentation is so clear and inspiring! Thanks
wow. Venkat. i like his style of presentation. awesome.
Venkat is carrying the java world
Best Programing teacher and inspiration till now. thanks alot.
The most comprehensive async/concurrency introduction.
One of the best talks that I've watched! I really what a kind of talk comparing the Golang channel in the Java world once we
now have the Project Loom
2:07:40 One thing I don't understand who executes the blocking calls? When I make Thread.sleep() on virtual threads, there must be someone who will remount it back. But which thread do this??
Imagine you have a single thread that receives a lot of jobs. This job can come with a future time, so that it won't start until X amount of time has passed. And now, that sleep will only need to schedule a task, insteaf of actually sleeping. what it does is that it schedules a "resume" task 1 second from now. Each thread has a list of tasks that it monitors or executes so there's no need for a parent supervisor to notify you to remount
I like the qtips analogy.
how does adding thread.sleep cause it to move to a different thread? 52:00
Since sleeping is a blocking operation, the Thread Scheduler does not want the other threads to die of starvation. So the Thread Scheduler allows another Thread to get some CPU time while the current thread sleeps. Now in the context of virtual threads, the sleeping thread will be unmounted from the platform thread (or carrier thread) so that another virtual thread can mount to that platform thread and do work until that sleeping thread wakes up. The sleeping thread is placed in Heap memory while it sleeps. When the sleeping thread wakes up, it will be picked up by another carrier thread to continue its execution.
Great, Weaved the contents like a 'sugaran'.
I tried shown example with JDK 21, but seems newFixedThreadPool and newVirtualThreadPerTaskExecutor works the same way... any idea?
So Clear.
Java was adopted by Sir Venkat Subramaniam looong back😂😂😂
one of the reasons why Java shines is because of Sir Venkat Subramaniam.
🎉🎉🎉
Really nice presentation!
Super silly question though, what's the scratchpad-ish tool used for coding the examples?
It's a terminal -- he is using VIM to code/run all the examples in a a terminal
Happiness is listening to Venkat at 2x speed 😅
Great presentation, thanks
2 hours 39 min of video, you raised comment 30 min after publication, how did you watch whole presentation?
He was listening at 5x speed
parallel viewing, did you learn nothing?
@@kurkhulcomb8994 Asynchronous viewing
@@Dram-jn5nw It's because I've been watching his presentations for so many years, so I don't need to see every second of it to give a compliment.
Nan(i.e. Indian bread), this was nice XD
TIL I'm a thread
Is this a java channel? Why’re most videos about Java?
maybe because java is most popular for high level application development.
Devoxx is a Java conference
@@KrisVerbeeckexactly what they want you to think. its actually a entry organization to javascript
Nice shoes or are those socks?
I’m really tired of all these addicted people starting a talk about their addiction, coffee is a drug, how about finding some other examples while you go to a rehab?
Lmao, savage
Funny moments 😂
23:51
1:08:49
1:25:56
1:39:00