Zum Inhalt springen
uencoder

Borrow Checker

Rusts Borrow Checker prüft die Referenzregeln zur Kompilierzeit: unveränderliche und veränderliche Referenzen dürfen nicht koexistieren, und die veränderliche Referenz muss eindeutig sein.

Zweck

Datenrennen und dangling Referenzen zur Kompilierzeit ausschließen — der Kern von Rusts Speichersicherheit.

Mechanismus

Regeln: 1) beliebig viele unveränderliche Referenzen oder 2) genau eine veränderliche Referenz — nie beides gleichzeitig. Referenzen dürfen die Lebensdauer der Daten nicht überdauern. Verstöße brechen die Kompilierung ab, statt Laufzeitfehler zu verursachen. NLL (non-lexical lifetimes) lockert die Beschränkungen.

Anwendungsfälle

  • Programmierung in Rust
  • Speichersicherheit
  • Nebenläufigkeitssicherheit

Verwandte Begriffe

References