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

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

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

Розклад

Including 10 minute breaks, this session should take about 3 hours and 20 minutes. It contains:

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