Mutex
- це контейнерна структура даних, яку зазвичай утримують розумні вказівники, що приймає дані і дозволяє нам замінювати змінювані
та незмінні посилання на дані всередині. Це запобігає зловживанню запозиченням
коли операційна система обмежує лише одному потоку процесора доступ до даних,
блокуючи інші потоки, доки початковий потік не завершить роботу із заблокованим запозичення.
Багатопоточність виходить за рамки Tour of Rust, але Mutex
є фундаментальною частиною організації
декількох потоків процесора, які отримують доступ до одних і тих самих даних.
Існує спеціальний розумний покажчик Arc
, який ідентичний Rc
, за винятком того, що використовує безпечне для потоків інкрементування лічильників посилань.
Його часто використовують для того, щоб мати багато посилань на один і той самий Mutex
.