Virtual Threads Are Not Async I/O: Lessons from Operating System Archaeology, Ivan Yonkov
About this talk
This talk explores the origins of asynchronous programming, tracing its roots back to the early days of Java and the concepts of OVERLAPPED I/O and I/O Completion Ports (IOCP). The speaker examines how asynchronous I/O was implemented at the operating system level long before the advent of features like reactive streams and CompletableFuture. By uncovering the fundamental mechanics that still influence modern Java applications, the session aims to provide clarity on how the JVM operates under the hood, enabling developers to make more informed architectural decisions and effectively debug asynchronous issues. This discussion emphasizes that while asynchronous programming has evolved, it has not necessarily become simpler, just better disguised.
More from this event
See all 29 talks →
Agents With Seatbelts: Practical Ways to Keep AI Code Gen Under Control, Jonathan Vila López
41:46
Practical MCP Security in Action, Willem Jan Glerum
43:59
Kotlin for Normal Brains (Without Jets), Nayden Gochev
59:30
Beyond the LLM API - What Developers Actually Need to Know About ML, Milen Dyankov
54:58