Skip to content

Conversation

@nrc
Copy link
Member

@nrc nrc commented Oct 8, 2024

This PR replaces the existing 'getting started' section with an introduction (pretty rough draft). I've also updated the README and shuffled the contents (SUMMARY.MD) around a bit to make space for future work.


Because the operating system is not involved, *context switching* in the async world is very fast. Furthermore, async tasks have much lower memory overhead than operating system threads. This makes async programming a good fit for systems which need to handle very many concurrent tasks and where those tasks spend a lot of time waiting (for example, for client responses or for IO).

Async programming also offers the programmer fine-grained control over how tasks are executed (levels of parallelism and concurrency, control flow, scheduling, and so forth). This means that async programming can be expressive as well as ergonomic for many uses.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this explainer!

Copy link
Member

@yoshuawuyts yoshuawuyts left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The broad strokes of this look good to me. Thank you for doing this!

@nrc nrc merged commit 5db5010 into rust-lang:master Oct 9, 2024
1 check passed
@nrc nrc deleted the intro branch October 9, 2024 20:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants