デッドロックとは?でっどろっく
デッドロックとは、複数の処理が互いに相手のロック解除を待ち続け、どちらも先に進めなくなってしまう状態。排他制御の副作用として発生しうる。
最終更新:2026-10-10
この語が出る過去問を解く →具体例
処理Aがデータ1をロックしてデータ2の解放を待ち、処理Bがデータ2をロックしてデータ1の解放を待っている場合、互いに永遠に待ち続けてしまう。
試験での引っ掛け
処理が単に遅い状態や無限ループとは別物で、互いに相手のロック解除を待ち合ったまま動けなくなる状態。対策はロックをかける順序を全処理で統一すること。ロックを増やす・強くすることは解決にならない。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:平成24年度 秋期 ITパスポート試験 問67(IPA)
デッドロックの説明として、適切なものはどれか。
正解:複数のプロセスが共通の資源を排他的に利用する場合に、お互いに相手のプロセスが占有している資源が解放されるのを待っている状態
要点:デッドロックは資源を握ったまま互いの解放を待ち合い停止する状態
デッドロックは、複数のプロセスがそれぞれ資源を排他的に確保したまま、相手が持つ資源の解放を待ち合ってしまい、どちらも先へ進めなくなる状態である。資源の確保順序をあらかじめ統一するなどの方法で回避する。
出典・参考
公式シラバスの9 技術要素 > 57. トランザクション処理 > (1) 同時実行制御(排他制御)に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。