基于所有权的资源管理的冒险(The Perils Of Ownership Based Resource Management (OBRM))

OBRM(亦称RAII:资源获取即初始化)是你在Rust中与很多进行交互的东西.特别是如果你使用标准库.

粗略地说,模式如下:要获取资源,你需要创建一个管理它的对象.要释放资源,你只需销毁该对象,它就会为模清理资源.这种模式管理的最常见”资源”就是 内存(memory) .Box,Rc,以及std::collections中的所有内容都可以方便地正确管理内存.这在Rust中尤为重要,因为我们没有普遍的GC来依赖内存管理.真正重点是:Rust是关于控制的.但是,我们不仅限于内存.几乎所有其他系统资源(如线程,文件或套接字)都通过这种API公开.