コンテンツへスキップ
uencoder

Borrow Checker

Rust のボローチェッカーは参照の規則をコンパイル時に検証する。不変参照と可変参照は共存できず、可変参照は一意でなければならない。

目的

データ競合とダングリング参照をコンパイル時に排除する。Rust のメモリ安全性の中核である。

メカニズム

規則は、1) 任意の個数の不変参照、または 2) 1 個の可変参照のいずれかで、両方を同時には許さない。参照がデータの寿命を超えて存続してはならない。違反は実行時エラーではなくコンパイル失敗となる。NLL(非字句的ライフタイム)がこの制限を緩和する。

ユースケース

  • Rust プログラミング
  • メモリ安全性
  • コンカレンシーの安全性

関連用語

References