1分钟内可阅读完
译文 · 基于 The Rustonomicon
原文链接: https://doc.rust-lang.org/nomicon/arc-mutex/arc.html
本节我们将实现 std::sync::Arc 的简化版。与此前实现的 Vec类似,我们不会用到标准库那么多的优化、内建函数或不稳定代码。
std::sync::Arc
Vec
本实现大致基于标准库实现(技术上取自 1.49 的 alloc::sync,因为实际实现在那里),但暂时不支持弱引用(weak reference),因为它们会让实现稍复杂。
alloc::sync
请注意,本节目前仍在大量编写中。
Arc 的布局
Arc 的基础实现
Arc 的 Clone
Arc 的 Drop
完整的 Arc 实现