テクノロジ系
春期
応用情報技術者 2016年 春期 問28
28 / 80
トランザクション A(処理 A1→処理 A2の順に実行する)とトランザクション B (処理 B1→処理 B2 の順に実行する)が、データベースの資源SとTに対し,次 のように処理 A1→処理 B1→処理 A2→処理 B2の順で専有ロックを要求する場合、 デッドロックが発生する資源の組合せはどれか。 なお、ロックは処理開始時にかけ、トランザクション終了時に解除する。 →処理A2 処理A1: トランザクションA COMMIT → 処理B2 トランザクションB 処理B1 v COMMIT >時刻 A1 B1 A2 B2

正解と解説
表示する
正解 イ
S T T
処理順 A1→B1→A2→B2 で各処理が資源S・Tを占有ロックし解放しないため、AがTを待ちBがSを待つ相互待ちが生じる。デッドロックが起きる資源の組合せはSとT両方が絡む選択肢1に該当する(図のロック順で相互待ちが成立)。