『増補改訂版 Java言語で学ぶデザインパターン入門 マルチスレッド編』に載っているデザインパターンを Groovy/GPars で書こうシリーズ、今回は Read-Write Lock パターン。 このパターンも Java SE 5 で導入された java.util.concurrent パッケージ(正確には java.util.concurrent.lock パッケージ)に定義されているクラス群を使うと簡単に実装できます。 今までのデザインパターンで処理を待たせる、つまりある意味でロックをとるものがいくつかありましたが、Read-Write Lock パターンでは、読み込みと書き込みで違ったロックの取り方をするのが特徴です。 複数のスレッドから並行に読み込みができる 単一のスレッドからしか書き込みができない 書き込んでいる最中は読み込みができない といった具合です。 こういうロックの取