この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 2259|答える: 0

共有ロックと排他ロック問題の分析

[リンクをコピー]
掲載地 2024/11/08 13:35:40 | | | |
マルチユーザー共有システムでは、複数のユーザーが同じデータに動作するとデータの不整合が生じる可能性があるため、並行操作ではトランザクションの同時実行を制御するためにロック操作が必要です。

共有ロック:名前からもわかるように、ロックは共有可能ですが、書き込み操作は共有されてはなりません。共有データがランダムに書き込まれると「ロック」というものは存在しません。したがって、共有ロックは読み取り操作の「共有」となります。つまり、このロックが追加された後はロックを書き込むことはできませんが、読み取ることは可能であり、読み取り専用ロックとも呼ばれます。
専用ロック:排他的ロックはより支配的で、このロックを追加すれば他の操作はできません。なぜですか? データを修正したいから、他の人に再度変更させてはいけませんし、読み取り専用ロックを追加してはいけません。なぜなら、読み取り専用ロックでは書き込み操作ができないからです。

例えば、トランザクションT1がデータD1に共有ロックを追加し、トランザクションT2とT3がそれぞれデータD2とD3に排他的ロックを追加する場合、トランザクションT1はデータに共有ロックを追加します(51)。 トランザクションT2ペアデータ(52)。

(51) 回答:D

A. D2とD3、さらにロックが成功します
B. D2、D3、そして共有ロックが成功します
C. D2と共有ロックが成功し、D3が追加するとロックが失敗します
D. D2、D3プラス排他ロック、共有ロックはすべて失敗します

(52) 答え:C

A. D1、D3、そして共有ロックはすべて失敗しました
B. D1、D3、そして共有ロックが成功します
C. D1と共有ロックは成功し、D3は別のロックを追加して失敗しました
D. D1とロックは成功し、D3は共有ロックを追加できませんでした

共有ロックがあれば共有ロックを追加できますが、排他ロックは追加できません。 排他的ロックが存在する場合、共有ロックも排他的ロックも追加できません。







先の:コンピュータにおける冗長技術
次に:.NET/C# はポリゴンの面積を計算します
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com