Balkrishna works as an engineering lead at ING Bank. He is also a frequent speaker at renowned tech conferences. He has passion for continuous learning and genuine desire to sharing knowledge. Although he has been working with Java for many years, he finds latest developments in Java quite exciting. In his free time, he enjoys playing chess. The analytical thinking and foresight used in chess is something he finds useful in software development.
Have you wondered how virtual threads in Java are able to provide such high scalability and how is JVM able to switch between so many virtual threads while executing a single platform thread? If you did then this talk is for you.
Continuations is the magic that powers Virtual Threads. A continuation can be viewed as a representation of the current state of the program or it can be viewed as a reference to the rest of the program. It helps us to pause execution of a program (or part thereof) and then resume it later. This ability to pause/resume a program is a powerful mechanism and is the basis for providing virtual threads.
This talk explains what Continuations are and where they are used. But more importantly, we write our own simple VirtualThread class using the Continuation API provided by JDK. This will give you clear idea about the role of continuations in the nature of virtual threads.
Searching for speaker images...