【しょくじするてつがくしゃもんだい】
食事する哲学者問題 とは?
💡 全員が左のフォークを持ったまま、右のフォークを待ち続ける永遠のディナー
📌 このページのポイント
食事する哲学者問題って名前がすごいけど、何の話なの?
えっ、じゃあ誰もご飯食べられないまま止まっちゃうの?
どうやったら解決できるの?
他にも方法はあるの?
「ウェイター(仲裁者)を置いて、同時に4人までしか食事させない」という方法もあるよ。5人中4人なら必ず誰かが両方のフォークを取れるからね。実際のOSでもリソースマネージャーがこういう制御をしてるんだ
実際のソフトウェアでもこの問題って起きるものなの?
50年前の問題が今でも使われてるってすごいね!
📖 おまけ:英語の意味
「Dining Philosophers Problem」 = 食事する哲学者問題
💬 1965年にダイクストラが提唱し、後にホーアが「食事する哲学者」と名付けたんだよ。並行処理の教科書には必ず出てくる有名な思考実験だよ