2

データを読み書きできるデータベースを実装しています。同時実行の問題については、ロックを実装する必要があります。通常、ReentrantReadWriteLock は、読み取りの前に書き込みを実行させます。どうすれば逆にいけますか? 書き込みスレッドが実行される前に読み取る方法はありますか?

4

1 に答える 1

4

ReentrantReadWriteLock の javadoc を読み直してください。読み取りと書き込みの間に順序はありません。同時読み取りを許可するだけで、同時書き込みと読み取りと同時の書き込みを禁止します。

このクラスには次のプロパティがあります。

取得順序

  • このクラスは、ロック アクセスに対してリーダーまたはライターの優先順位を課しません。ただし、オプションの公平性ポリシーはサポートしています。
于 2012-05-15T07:40:10.830 に答える