同一份异步程序七种输出:Async/Await 跨语言差异远超预期
IanArawjo · x · 2026-09-10
Brown 大学认知工程实验室发布论文 《A Design Space Exploration of Async/Await》 并配交互式博客。核心发现:各语言 async/await 设计初衷一致(让并发代码像直线代码),但实际语义差异远超预期。
一个极简的 fire-and-forget 日志程序(后台 spawn 写日志、主流程 sleep 后打印 C),在 7 个现代异步运行时中竟产生 4 种不同输出;论文测试了该程序的 3 个变体,没有任何两个运行时输出完全一致。
论文进一步探讨差异根源,包括 cold/hot async function 等设计空间维度,并梳理 "structured concurrency"(结构化并发)的确切含义。适合想真正理解自己所用水语言异步语义的开发者阅读。
「编程与Agent」频道最新
- AutoResearchExam 用隐藏测试集观察 AI 做 24 小时科研的真实行为 — AlexGDimakis · 2026-09-10
- OpenAI DevDay Exchange 公布八城行程,班加罗尔十月启幕 — OpenAIDevs · 2026-09-10
- Coinbase 上线 Grok:Agent 可直接替你交易和分析 — MurrLincoln · 2026-09-10
- Databricks 推出自适应检索器:只在有用时多花搜索步骤 — matei_zaharia · 2026-09-10
- 写 agent harness 前先画蓝图:从章程到威胁模型的完整流程 — Telos_in_the_Void · 2026-09-10
- Coinbase for Agents 上线 Grok:一句话即可交易加密货币 — kleffew94 · 2026-09-10