閉じる

ITパスポート平成22年春期 問82

問82
note_alt
calculate

2台のPCから一つのファイルを並行して更新した。ファイル中の同一のデータ(データ1)に対する処理が①~④の順で行われたとき,データ1はどの値になるか。ここで,データ1の初期値は5であった。
82.png/image-size:376×103
  • 4
  • 5
  • 14
  • 15

分類 :

テクノロジ系 » データベース » トランザクション処理

正解 :

ア

解説 :

①でPC-Aは初期値5を読み10を加えて15を保持します。②でPC-Bも、まだ更新前の5を読み1を引いて4を保持します。③でAが15を書き込んだ後、④でBが4を書き込むので最終値は4です。

二つの計算を順番に共有データへ適用した結果の14にはなりません。Bが古い値を基に計算した結果でAの更新を上書きしたためです。この更新の消失を防ぐには、ロック等で読み出しから書込みまでを適切に制御します。

▲
Pagetop