Rust ツアー 目次

スレッド間でのアクセスの共有

Mutex は、スマートポインタによって一般的に保持されるコンテナデータ構造で、データを受け取り、内部のデータへの可変・不変な参照を借用させてくれます。これは、オペレーティングシステムに一度に1つの CPU スレッドだけがデータへのアクセスを許可するよう制限させ、元のスレッドがロックされた借用を終えるまで他のスレッドをブロックすることで、借用の乱用を防ぎます。

マルチスレッドは Tour of Rust の範囲を超えていますが、Mutex は複数の CPU スレッドが同じデータへアクセスするのを調整するための基本的な要素です。

Rc と同一ですが、参照カウントのインクリメントがスレッドセーフである特別なスマートポインタ Arc があります。同じ Mutex への複数の参照を持たせるためによく使われます。