Already popular among programmers for its memory safety and speed, the Rust programming language is also valuable for asynchrony. This practical book shows you how asynchronous Rust can help you solve problems that require multitasking. You’ll learn how to apply async programming to solve problems with an async approach. You will also dive deeper into async runtimes, implementing your own ways in which async runtimes handle incoming tasks.
Authors Maxwell Flitton and Caroline Morton also show you how to implement the Tokio software library to help you with incoming traffic, communicate between threads with shared memory and channels, and design a range of complex solutions using actors. You’ll also learn to perform unit and end-to-end tests on a Rust async system.
With this book, you’ll learn:
How Rust approaches async programming
How coroutines relate to async Rust
Reactive programming and how to implement pub sub in async rust
How to solve problems using actors
How to customize Tokio to gain control over how tasks are processed
Async Rust design patterns
How to build an async TCP server just using the standard library
How to unit test async RustBy the end of the book, you’ll be able to implement your own async TCP server completely from the standard library with zero external dependencies, and unit test your async code.