Omgaan Met Geleende Gegevens
De regels van Rust voor referenties kunnen wellicht het beste als volgt worden samengevat:
- Rust staat slechts één wijzigbare referentie toe of meerdere niet-wijzigbare referenties, maar niet beide.
- Een referentie mag nooit langer leven dan de eigenaar ervan.
Dit is meestal geen probleem wanneer referenties aan functies worden doorgegeven.
Geheugendetails:
- De eerste regel van referenties voorkomt data races. Wat is een data race? Een data race treedt op wanneer het lezen van gegevens mogelijk niet gesynchroniseerd is, doordat er tegelijkertijd naar dezelfde gegevens wordt geschreven. Dit gebeurt vaak bij multi-threaded programmeren.
- De tweede regel van referenties voorkomt misbruik van referenties die verwijzen naar niet-bestaande gegevens (in C dangling pointers genoemd).