原文链接:https://doc.rust-lang.org/nomicon/obrm.html#the-perils-of-ownership-based-resource-management-obrm

基于所有权的资源管理(OBRM)的风险

OBRM(又被成为RAII:Resource Acquisition is Initialization,资源获取即初始化),在Rust中你会有很多和它打交道的机会,特别是在使用标准库的时候。

这个模式简单来说是这样的:如果要获取资源,你只要创建一个管理它的对象。如果要释放资源,你只要销毁这个对象,由对象负责为你回收资源。而所谓资源通常指的就是内存。BoxRc,以及std::collections中几乎所有的东西都是为了方便且正确地管理内存而存在的。这对于Rust尤为重要,因为我们并没有垃圾回收器帮我们管理内存。关键点就在这:Rust要掌控一切。不过我们并不是只能管理内存。差不多所有的系统资源,比如线程、文件、还有socket,都可以用到这些API。