Overview
Explore the world of asynchronous I/O in Rust with this RustFest Zürich 2017 conference talk by Alex Crichton. Dive into the advancements made in the Rust ecosystem, focusing on the futures crate and the Tokio project. Learn how Tokio leverages Rust's strengths to achieve high performance. Discover the intricacies of async programming, including futures, tasks, concurrency, and event loops. Gain insights into server design, timeouts, and thread-local variables. Understand the challenges and solutions in implementing efficient asynchronous systems. Perfect for Rust developers looking to enhance their knowledge of async I/O and high-performance programming techniques.
Syllabus
Intro
Async IO
Whats happening here
A very difficult world
Futures
Future example
Tokio
Tokyo
Futures Crate
Async await
Writing a future
Threadsafe future
Trace
sentinel
callback
objectsafe
if statement
local solution
more cases
elfin
fn
API Cost
Drawbacks
Recap
Server Design
Tasks
Concurrency
Many tasks
A task
Approach
Future
Timeout
Moments
Timer
Unit
Poll
TaskNotify
Design Overview
Notifications
Transform
Pole Read
Wake Up
Event Loop
Questions
Sink Read
Reschedule
Thread local variable
Poll event
Taught by
Rust