Turul limbajului Rust Cuprins

Partajarea între thread-uri

Mutex este o structură de date de tip container, întâlnită de obicei la pointerii inteligenți, ce ia date și ne permite să împrumutăm referințe mutabile și imutabile la datele ce se află înăuntru. Abuzul împrumutului este prevenit prin restricționarea procesorului, astfel încât un singur thread are acces la date la un moment dat, blocând celelalte thread-uri până ce thread-ul original a terminat împrumutul său blocat. Multithreading-ul depășește scopul Turului limbajului Rust, dar Mutex este o parte fundamentală a gestionării mai multor thread-uri ce accesează date simultan.

Există un pointer inteligent special numit Arc, identic lui Rc, cu excepția că folosește o incrementare a numărului de referințe sigură din punct de vedere al thread-urilor. Este des întâlnită folosirea mai multor referințe pentru același Mutex.