Title: Documentation enhancement proposal: explainer for asyncio · Issue #137026 · python/cpython · GitHub
Open Graph Title: Documentation enhancement proposal: explainer for asyncio · Issue #137026 · python/cpython
X Title: Documentation enhancement proposal: explainer for asyncio · Issue #137026 · python/cpython
Description: Documentation I've used Python's asyncio a couple times now, but never really felt confident in my mental model of how it fundamentally works and therefore how I can best leverage it. The official docs provide decent documentation for ea...
Open Graph Description: Documentation I've used Python's asyncio a couple times now, but never really felt confident in my mental model of how it fundamentally works and therefore how I can best leverage it. The official ...
X Description: Documentation I've used Python's asyncio a couple times now, but never really felt confident in my mental model of how it fundamentally works and therefore how I can best leverage it. The o...
Opengraph URL: https://github.com/python/cpython/issues/137026
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Documentation enhancement proposal: explainer for asyncio","articleBody":"# Documentation\n\nI've used Python's asyncio a couple times now, but never really felt confident in my mental model of how it fundamentally works and therefore how I can best leverage it. The official docs provide decent documentation for each specific function in the package, but, in my opinion, lack a cohesive overview of the systems design and architecture. Something that could help the user understand the why and how behind the recommended patterns. And a way to help the user make informed decisions about which tool in the asyncio toolkit they ought to grab, or to recognize when asyncio is the entirely wrong toolkit. \n\nI spent a long time digging into the internals and then decided to take a stab at filling that perceived gap by writing a fairly thorough long-form article: [A conceptual overview of asyncio](https://github.com/anordin95/a-conceptual-overview-of-asyncio/blob/main/readme.md).\n\nI also submitted the article to HackerNews where it got some traction: https://news.ycombinator.com/item?id=44638710\n\nI imagine there's a few ways forward here. \n- Linking to the Github article from the asyncio docs\n- Integrating the article directly into the Python docs (along with stylistic \u0026 content modifications to match)\n- Y'all decide the article's mediocre at best and you don't want it merged. (Fair enough!).\n\nEither way, let me know what y'all figure makes the most sense. :)\n\n\n\u003c!-- gh-linked-prs --\u003e\n### Linked PRs\n* gh-137215\n* gh-137581\n* gh-137582\n\u003c!-- /gh-linked-prs --\u003e\n","author":{"url":"https://github.com/anordin95","@type":"Person","name":"anordin95"},"datePublished":"2025-07-22T21:12:53.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":11},"url":"https://github.com/137026/cpython/issues/137026"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:14a7cac8-9707-d41c-22ae-31a54e37cd7a |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | E1FC:1EEB64:F9BADF:1563DA4:6969F345 |
| html-safe-nonce | 5bb504ce8ee537ae7b3e9d417177da2bd3bc9c4fe6499573149a3c5908f87cd9 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFMUZDOjFFRUI2NDpGOUJBREY6MTU2M0RBNDo2OTY5RjM0NSIsInZpc2l0b3JfaWQiOiI5MzA3MTg5MjUxODU0Nzk0OTMiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 8a39d1ca636ca387b9ddcaa51223d349a8166d470a4afe6ef4871dd1f52a3514 |
| hovercard-subject-tag | issue:3254092233 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/cpython/137026/issue_layout |
| twitter:image | https://opengraph.githubassets.com/ef68c6df0fb89a7075d5f76d3d0b8da3a338fcf920e0102d8051f1934be2676e/python/cpython/issues/137026 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/ef68c6df0fb89a7075d5f76d3d0b8da3a338fcf920e0102d8051f1934be2676e/python/cpython/issues/137026 |
| og:image:alt | Documentation I've used Python's asyncio a couple times now, but never really felt confident in my mental model of how it fundamentally works and therefore how I can best leverage it. The official ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | anordin95 |
| hostname | github.com |
| expected-hostname | github.com |
| None | 7b32f1c7c4549428ee399213e8345494fc55b5637195d3fc5f493657579235e8 |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | bdde15ad1b403e23b08bbd89b53fbe6bdf688cad |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width