Concurrency in Rust
Alex Crichton
What’s Rust?
Rust is a systems programming language that runs
blazingly fast, prevents segfaults, and guarantees
thread safety.
Concurrency?
Rust?
Libraries
Futures
What’s concurrency?
In computer science, concurrency is a
property of systems in which several
computations are executing
simultaneously, and potentially interacting
with each other.
Why concurrency?
Getting our feet wet
// What does this print?
int main() {
int pid = fork();
printf("%d\n", pid);
}
Concurrency is hard!
• Data Races
• Race Conditions
• Deadlocks
• Use after free
• Double free
Exploitable!
Concurrency?
Rust?
Libraries
Futures