この節では,Java クラスライブラリでの排他制御の概念について説明します。
Java クラスライブラリでは,文書空間オブジェクトを操作する場合には,ほかのユーザから同時にオブジェクトに対する操作が実行されないようにするために,排他制御をする必要があります。文書空間オブジェクトに対してロックを設定することによって,その文書空間オブジェクトの操作についてユーザ間の排他制御が実現します。ロックの設定例を次の図に示します。
図2-12 ロックの設定例
この例では,ユーザAは,参照するためのロックを設定して文書Xを参照しています。このため,ユーザBは,同じロックを設定して文書Xを参照することはできますが,更新および削除はできません。
なお,Java クラスライブラリの排他制御には,メソッドによって暗黙的に設定されるロックと,ユーザが明示的に設定するロックがあります。