Rust 程序设计语言 简体中文版 1.85.0
出现的特定情况,不正确的代码会直接编 译失败并提供解释问题的错误信息。因此,你可以在开发时修复代码,而不是在部署到生产环 境后修复代码。我们给 Rust 的这一部分起了一个绰号无畏并发(fearless concurrency)。无畏 并发令你的代码免于出现诡异的 bug 并可以轻松重构且无需担心会引入新的 bug。 注意:出于简洁的考虑,我们将很多问题归类为并发,而不是更准确的区分并发和/或 并行。对于本章,当我们谈到并发时,请自行脑内替换为 375/562Rust 程序设计语言 简体中文版 这正是 Rust 的 async 抽象所提供的。不过在讲解它们在实践中如何工作之前,让我们稍微绕 个远路来了解一下并行(parallelism)和并发(concurrency)的区别。 并行与并发 在上一章中,我们大致将并行和并发视为可以互换的概念。但现在我们需要更加精确地区分它 们,因为它们的区别将在实际工作中显现出来。 思考一下不同的团队分割方法来开发 forget”);它们没有原生等同于 future 的机制,所以它们简单地运行到结束 而不会被中断,除非操作系统本身介入。也就是说,它们没有像 future 那样内建任务内并发 (intratask concurrency)支持。Rust 中的线程也没有提供取消机制 – 本章虽未明确讨论此 主题,但当我们结束一个 future 时,其状态能够被正确清理就隐含了这一事实。 这些限制也使得线程比 future0 码力 | 562 页 | 3.23 MB | 9 天前3
共 1 条
- 1