3.11.1
ロック種別
Java クラスライブラリでは,次に示すロック種別があります。
readロック
文書空間オブジェクトを参照する場合に設定されるロックです。あるユーザがreadロックを設定して取り出した文書空間オブジェクトに対して,ほかのユーザはwriteロックを設定してその文書空間オブジェクトを更新,削除することはできません。ただし,readロックを設定してその文書空間オブジェクトを参照することはできます。readロックを設定した文書空間オブジェクトの操作を次の図に示します。
図3-55
readロックを設定した文書空間オブジェクトの操作
ユーザAがほかのユーザより先に文書Xにreadロックを設定して参照している場合,ほかのユーザは文書Xにreadロックを設定して参照することはできますが,writeロックを設定して更新および削除することはできません。
writeロック
文書空間オブジェクトを更新または削除する場合に設定されるロックです。あるユーザがwriteロックを設定して取り出した文書空間オブジェクトに対して,ほかのユーザはreadロックまたはwriteロックを設定できません。したがって,writeロックを設定した以外のユーザが,readロックまたはwriteロックを設定してその文書空間オブジェクトを参照,更新または削除することはできません。writeロックを設定した文書空間オブジェクトの操作を次の図に示します。
図3-56
writeロックを設定した文書空間オブジェクトの操作
ユーザAがほかのユーザより先に文書Xにwriteロックを設定して更新または削除しようとしている場合,ほかのユーザは文書Xにreadロックを設定して参照したり,writeロックを設定して更新および削除したりすることはできません。