Search icon
Cart icon
Close icon
You have no products in your basket yet
Save more on your purchases!
Savings automatically calculated. No voucher code required
Arrow left icon
All Products
Best Sellers
New Releases
Learning Hub
Free Learning
Arrow right icon
Asynchronous Programming in Rust

You're reading from  Asynchronous Programming in Rust

Product type Book
Published in Feb 2024
Publisher Packt
ISBN-13 9781805128137
Pages 306 pages
Edition 1st Edition
Author (1):
Carl Fredrik Samson Carl Fredrik Samson
Profile icon Carl Fredrik Samson

Table of Contents (16) Chapters

Preface 1. Part 1:Asynchronous Programming Fundamentals
2. Chapter 1: Concurrency and Asynchronous Programming: a Detailed Overview 3. Chapter 2: How Programming Languages Model Asynchronous Program Flow 4. Chapter 3: Understanding OS-Backed Event Queues, System Calls, and Cross-Platform Abstractions 5. Part 2:Event Queues and Green Threads
6. Chapter 4: Create Your Own Event Queue 7. Chapter 5: Creating Our Own Fibers 8. Part 3:Futures and async/await in Rust
9. Chapter 6: Futures in Rust 10. Chapter 7: Coroutines and async/await 11. Chapter 8: Runtimes, Wakers, and the Reactor-Executor Pattern 12. Chapter 9: Coroutines, Self-Referential Structs, and Pinning 13. Chapter 10: Creating Your Own Runtime 14. Index 15. Other Books You May Enjoy

Futures in Rust

In Chapter 5, we covered one of the most popular ways of modeling concurrency in a programming language: fibers/green threads. Fibers/green threads are an example of stackful coroutines. The other popular way of modeling asynchronous program flow is by using what we call stackless coroutines, and combining Rust’s futures with async/await is an example of that. We will cover this in detail in the next chapters.

This first chapter will introduce Rust’s futures to you, and the main goals of this chapter are to do the following:

  • Give you a high-level introduction to concurrency in Rust
  • Explain what Rust provides and not in the language and standard library when working with async code
  • Get to know why we need a runtime library in Rust
  • Understand the difference between a leaf future and a non-leaf future
  • Get insight into how to handle CPU-intensive tasks

To accomplish this, we’ll divide this chapter into the following...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}