1. 聞き流しプログラミング言語学習
  2. Rust 043 デッドロック - 停止..
Rust 043 デッドロック - 停止を生む取得順序
2026-06-27 05:08

Rust 043 デッドロック - 停止を生む取得順序

第43章へようこそ。


今日のテーマは「デッドロック」です。


ここまで、複数のスレッドが安全に値を共有するための手段を見てきました。

MutexやRwLockは、ロックを取った流れだけに接触を許し、ほかの流れを待たせることで、同時の書き換えを防いだ。

ロックは、待たせることで安全を作る仕組みでした。


しかし、待たせることそのものが、新しい停止を生むことがあります。

複数の流れが、互いに相手の解放を待ち、どちらも進めなくなる。

この、互いを待ち続けて永遠に進まない状態を、デッドロックと呼びます。


デッドロックは、Rustがコンパイル時に防がない種類の問題です。

今日扱うのは、デッドロックがなぜ起こるのか、なぜ型システムがそれを防がないのか、

そして、取得の順序を統一することがなぜ回避になるのか、という思考法です。

感想

まだ感想はありません。最初の1件を書きましょう!

05:08

コメント

スクロール