mirror of
https://github.com/KaiserY/trpl-zh-cn
synced 2024-11-09 00:43:59 +08:00
修改示例 16-15处的不通顺的表述
This commit is contained in:
parent
786803de42
commit
2b1d11e56e
@ -245,7 +245,7 @@ counter:std::rc::Rc<std::sync::Mutex<i32>>]`
|
|||||||
|
|
||||||
你可能会好奇为什么不是所有的原始类型都是原子性的?为什么不是所有标准库中的类型都默认使用 `Arc<T>` 实现?原因在于线程安全带有性能惩罚,我们希望只在必要时才为此买单。如果只是在单线程中对值进行操作,原子性提供的保证并无必要,代码可以因此运行的更快。
|
你可能会好奇为什么不是所有的原始类型都是原子性的?为什么不是所有标准库中的类型都默认使用 `Arc<T>` 实现?原因在于线程安全带有性能惩罚,我们希望只在必要时才为此买单。如果只是在单线程中对值进行操作,原子性提供的保证并无必要,代码可以因此运行的更快。
|
||||||
|
|
||||||
回到之前的例子:`Arc<T>` 和 `Rc<T>` 有着相同的 API,所以修改程序修改 `use` 行和 `new` 调用。示例 16-15 中的代码最终可以编译和运行:
|
回到之前的例子:`Arc<T>` 和 `Rc<T>` 有着相同的 API,所以修改程序中的 `use` 行和 `new` 调用。示例 16-15 中的代码最终可以编译和运行:
|
||||||
|
|
||||||
<span class="filename">文件名: src/main.rs</span>
|
<span class="filename">文件名: src/main.rs</span>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user