【Rust日报】2023-07-18 Pin- 温故而知新

💡 原文中文,约6300字,阅读约需15分钟。
📝

内容提要

这篇文章讲解了在Rust中的Pin/Unpin的概念,Pin是一种指针,用于处理自引用结构,Unpin是一个Trait,标记类型在被固定后可以安全地移动。为了处理自引用结构,需要使用Pin来防止移动。在拥有所有权的Future进行await时,编译器可以处理固定。否则,需要使用pin!或Box::pin来处理固定。大多数结构是Unpin的,但async fn和async {}总是产生!Unpin结构。

🏷️

标签

➡️

继续阅读