Ласкаво просимо до одночасних обчислень у Rust

Rust має повну підтримку паралелізму та одночасних обчислень за допомогою потоків ОС із м’ютексами та каналами.

Система типів у Rust відіграє важливу роль у тому, що дозволяє зробити багато помилок з одночасним виконанням помилками часу компіляції. Це часто називають безстрашним одночасним виконанням, оскільки ви можете покластися на компілятор для забезпечення коректності під час виконання.

Розклад

Враховуючи 10-хвилинні перерви, ця сесія має тривати близько 3 годин та 20 хвилин. Вона містить:

СегментТривалість
Потоки30 хвилин
Канали20 хвилин
Send та Sync15 хвилин
Спільний стан30 хвилин
Вправи1 година та 10 хвилин
  • Rust дозволяє нам отримати доступ до інструментарію одночасності виконнання ОС: потоків, примітивів синхронізації тощо.
  • Система типів дає нам безпеку для одночасного виконання без будь-яких спеціальних функцій.
  • Ті самі інструменти, які допомагають з "одночасним" доступом в одному потоці (наприклад, викликана функція, яка може змінювати аргумент або зберігати посилання на нього, щоб прочитати пізніше), позбавляють нас від проблем багатопотоковості.